【问题标题】:How to update a database according to SignalR?如何根据 SignalR 更新数据库?
【发布时间】:2021-07-14 09:02:21
【问题描述】:

首先,我按照本指南工作: 使用 .NET Core、ReactJS 和 SignalR 创建简单的实时聊天 https://medium.com/swlh/creating-a-simple-real-time-chat-with-net-core-reactjs-and-signalr-6367dcadd2c6

提示:强烈推荐的指南。简单易懂)

我做了这个指南,效果很好。

现在开始现实生活......

我有一个博客。 我的博客目前有一个我用 axios 调用的数据库,它存储在一个数据库中。但是当数据库发生变化时不会更新。

我想升级网站,每次系统有更新(新帖子、新评论、新赞等)时都会收到提醒消息

我不太明白如何组合它。

我认为(根据上面指南的划分)在chat.js组件中

connection
      .start ()
      .then ((result) => {
        connection.on ("ReceiveMessage", (message) => {
          const updatedChat = [... latestChat.current];
          updatedChat.push (message);
          ** setNew (true); <-------- **
          setChat (updatedChat);
        });
      })

设置他获取新数据将状态更改为true,然后它将访问数据库以通过axios获取新信息。

我觉得比较麻烦,有没有办法直接定义?

【问题讨论】:

    标签: reactjs asp.net-core signalr


    【解决方案1】:

    我有一个博客。我的博客目前有一个我用 axios 调用的数据库,它存储在一个数据库中。但是当数据库发生变化时不会更新。

    我想升级网站,每次系统有更新(新帖子、新评论、新赞等)时都会收到提醒消息

    在您的博客系统中,用户似乎可以通过使用 axios 向后端服务发出 HTTP 请求来处理或更新博客/评论。

    如果您想在有人更改博客或评论时将一些实时通知/数据推送到连接的 SignalR 客户端,您可以尝试在您的 API 控制器中注入 IHubContext 的实例,然后更新数据库后,通过控制器操作向 SignalR 客户端发送消息。

    有关“从中心外发送消息”的更多信息,请查看:

    https://docs.microsoft.com/en-us/aspnet/core/signalr/hubcontext?view=aspnetcore-5.0

    【讨论】:

      猜你喜欢
      • 2016-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-24
      • 2020-03-22
      • 1970-01-01
      相关资源
      最近更新 更多