GithubHelp home page GithubHelp logo

drizzle365 / moments Goto Github PK

View Code? Open in Web Editor NEW
73.0 73.0 4.0 24.75 MB

一个 C# 开发的博客朋友圈平台。

Home Page: https://moments.shiyu.dev

License: MIT License

C# 78.34% Dockerfile 0.40% CSS 20.67% JavaScript 0.58%
asp-net-core atom atom-feed blog csharp dotnet feed moments rss rss-reader

moments's Issues

docker部署采集不成功

  07/13/2023 05:28:30 : 开始采集任务

fail: Moments.Service.GatherService[0]
Flurl.Http.FlurlHttpException: Call failed. Resource temporarily unavailable (www.sunpeiwen.com:443): GET https://www.sunpeiwen.com/atom.xml
---> System.Net.Http.HttpRequestException: Resource temporarily unavailable (www.sunpeiwen.com:443)
---> System.Net.Sockets.SocketException (11): Resource temporarily unavailable
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|281_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem)
at System.Threading.Tasks.TaskCompletionSourceWithCancellation1.WaitWithCancellationAsync(CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.HttpConnectionWaiter1.WaitForConnectionAsync(Boolean async, CancellationToken requestCancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
at Flurl.Http.FlurlRequest.SendAsync(HttpMethod verb, HttpContent content, HttpCompletionOption completionOption, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at Flurl.Http.FlurlRequest.HandleExceptionAsync(FlurlCall call, Exception ex, CancellationToken token)
at Flurl.Http.FlurlRequest.SendAsync(HttpMethod verb, HttpContent content, HttpCompletionOption completionOption, CancellationToken cancellationToken)
at Flurl.Http.FlurlRequest.SendAsync(HttpMethod verb, HttpContent content, HttpCompletionOption completionOption, CancellationToken cancellationToken)
at Flurl.Http.ResponseExtensions.ReceiveString(Task1 response) at Moments.Service.GatherService.GetAtom(String url, Int32 fid) in /src/Service/GatherService.cs:line 173 fail: Moments.Service.GatherService[0] Flurl.Http.FlurlHttpException: Call failed. Resource temporarily unavailable (www.jkjoy.cn:443): GET https://www.jkjoy.cn/atom.xml ---> System.Net.Http.HttpRequestException: Resource temporarily unavailable (www.jkjoy.cn:443) ---> System.Net.Sockets.SocketException (11): Resource temporarily unavailable at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken) at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) at System.Net.Sockets.Socket.g__WaitForConnectWithCancellation|281_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) --- End of inner exception stack trace --- at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem) at System.Threading.Tasks.TaskCompletionSourceWithCancellation1.WaitWithCancellationAsync(CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.HttpConnectionWaiter1.WaitForConnectionAsync(Boolean async, CancellationToken requestCancellationToken) at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) at Flurl.Http.FlurlRequest.SendAsync(HttpMethod verb, HttpContent content, HttpCompletionOption completionOption, CancellationToken cancellationToken) --- End of inner exception stack trace --- at Flurl.Http.FlurlRequest.HandleExceptionAsync(FlurlCall call, Exception ex, CancellationToken token) at Flurl.Http.FlurlRequest.SendAsync(HttpMethod verb, HttpContent content, HttpCompletionOption completionOption, CancellationToken cancellationToken) at Flurl.Http.FlurlRequest.SendAsync(HttpMethod verb, HttpContent content, HttpCompletionOption completionOption, CancellationToken cancellationToken) at Flurl.Http.ResponseExtensions.ReceiveString(Task1 response)
at Moments.Service.GatherService.GetAtom(String url, Int32 fid) in /src/Service/GatherService.cs:line 173

2.0 版本计划

预计下个版本的更新内容巨大,所以直接将下个版本号定为 2.0 !

最重要的更新在后台部分,使用MASA重构的全新后台,带来更多的功能和更便捷的操作布局

新版后台(测试截图不代表最终发布):
947396e98fb6e0cf1618b3f37fbe206

旧版后台:
image

还有一些其他的更新,敬请期待!

另外还将提供完善的文档中心,稳定的升级策略,并且会发布 1.0 到 2.0 数据库文件升级软件,方便老用户快速使用新版本。

文档中心

使用Gitbook构建完整的文档帮助中心

暂停更新至年底

最近忙于考研,没有时间更新本项目,年底考研结束后会进行高频更新

关于 1.0 版本的计划

  1. 系统设置从 appsettings.json 中迁移到后台数据库设置(web端设置)
  2. 修改增加友情链接增强功能(自助申请,自动检测,状态标记)
  3. 更完善的后台(UI和功能增强)
  4. 更完善的前台(UI和功能增强)

提供稳定升级方案

当前升级只能清理挂载目录重新拉去docker镜像升级很不方便,而且会清理之前的数据。
增加一种相对稳定的不丢失数据的升级方案:
可行的思路
1.依旧是清理数据但是提供数据导出导入
2.保留数据,升级替换容器内的可执行文件(封装自动化脚本)

重构前端页面

重构前后端页面,主要是后台将使用masa重构,使用更加便捷的布局并提供更加丰富的后台管理功能

建议添加文章标题的抓取

通过 demo 展示的朋友圈可以看到已经订阅的网站内容,但是列表显示的都是文章摘要,缺少了标题。如果在摘要前面有文章标题的话就更好了,这样看起来也比较好理解。虽然不知道怎么实现,但还是提个建议,万一作者你能实现呢😁😁😁

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.