如何解决调用ActionCable方法和调用API的区别
假设我正在尝试使用 ActionCable on Ruby on Rails 制作一个简单的聊天应用程序。
在很多情况下,我看到的示例代码是这样的:
从前端调用 speak
来广播消息。
class RoomChannel < ApplicationCable::Channel
def subscribed
stream_from 'room_channel'
end
def unsubscribed
# Any cleanup needed when channel is unsubscribed
end
def speak(data)
Message.create!(body: data['message'])
ActionCable.server.broadcast 'room_channel',body: data['message']
end
end
end
但是,我相信从前端调用这个 API 会返回相同的结果,不是吗?
class MessagesController < ApplicationController
def create
Message.create!(body: params[:message])
ActionCable.server.broadcast 'room_channel',body: params[:message]
end
end
对我来说,它们看起来像是在做同样的事情,只是两种不同的方式。
我刚刚开始学习 ActionCable,我并不完全理解它们之间的区别。
它们有什么不同,正确的方法是什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。