こんにちは、
ドキュメントによると、メッセージバスは対象ユーザーに対してメッセージを公開するようですね。
ただし、クライアントがチャンネルを購読しようとする際に権限を確認する方法はないかと思いまして、以下のような処理が可能でしょうか。
MessageBus.on_subscribe('/bank_account_123') do
if current_user.bank_account == 123
# 購読を許可
else
# 購読を拒否
end
こんにちは、
ドキュメントによると、メッセージバスは対象ユーザーに対してメッセージを公開するようですね。
ただし、クライアントがチャンネルを購読しようとする際に権限を確認する方法はないかと思いまして、以下のような処理が可能でしょうか。
MessageBus.on_subscribe('/bank_account_123') do
if current_user.bank_account == 123
# 購読を許可
else
# 購読を拒否
end
私は専門家ではありませんが、バスにデータを送信する「発行側」でアクセスを制御したいのであって、「監視側」ではないと思います。
もう少し具体的なユースケースについて教えていただけますか?どのようなものを作ろうとしているのでしょうか?
アプリの1つを再構築し、Action Cable を Message Bus に置き換えています。以前は購読時に権限を確認するパターンでしたが、Message Bus を本来の意図通りに活用できるようになったため、問題ありません。なお、Message Bus は非常に優れた実装です。![]()