首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Rails 5 API +实时通知

Rails 5 API +实时通知
EN

Stack Overflow用户
提问于 2016-10-26 21:03:29
回答 1查看 1.4K关注 0票数 4

我只创建了一个Rails 5 API,我需要创建一个实时的web通知。

通过使用ActionCable可以做到这一点吗?是否有人有行动电缆或任何其他解决方案的例子?

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-27 15:02:51

这是一个web通知通道,允许您在向右流广播时触发客户端web通知:

创建服务器端web通知通道:

代码语言:javascript
运行
复制
# app/channels/web_notifications_channel.rb
class WebNotificationsChannel < ApplicationCable::Channel
  def subscribed
    stream_for current_user
  end
end

创建客户端web通知通道订阅:

代码语言:javascript
运行
复制
# app/assets/javascripts/cable/subscriptions/web_notifications.coffee
# Client-side which assumes you've already requested
# the right to send web notifications.
App.cable.subscriptions.create "WebNotificationsChannel",
  received: (data) ->
    new Notification data["title"], body: data["body"]

从应用程序的其他地方将内容广播到web通知通道实例:

代码语言:javascript
运行
复制
# Somewhere in your app this is called, perhaps from a NewCommentJob
WebNotificationsChannel.broadcast_to(
  current_user,
  title: 'New things!',
  body: 'All the news fit to print'
)

WebNotificationsChannel.broadcast_to调用在当前订阅适配器的pubsub队列中为每个用户设置一个单独的广播名称下的消息。对于ID为1的用户,广播名为web_notifications:1

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40272066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档