我正在开博客,我的想法是,只要有人在我的某个帖子(例如Facebook或类似的社交媒体)上发表评论,就会立即收到实时通知。我尝试使用ActionCable功能做到这一点,一切看起来都有效,但通知不仅由我看到,而且现在都在博客上的所有人看到。
我还试图从官方文档中添加这部分代码来制作私人频道:
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :current_user
def connect
self.current_user = find_verfied_user
end
protected
def find_verfied_user
if current_user = env['warden'].user
current_user
else
reject_unauthorized_connection
end
end
end
end
虽然有效,但是除了管理员以外的其他人正在阅读博客时,服务器每隔20秒就会轮询并拒绝连接,这对服务器来说是一个额外的负载。
我想知道是否有某种方法可以告诉ActionCable仅向特定用户广播通知(在这种情况下以管理员身份向我广播)而不被其他人看到?或者使用像Faye这样的其他功能有更好的方法吗?提前谢谢。