websocket-rails
( https://github.com/websocket-rails/websocket-rails ) gem を使用して既存の RoR アプリにチャット機能を追加し、Heroku の本番モードでテストしています。
localhost では正常に動作しますが、Heroku に送信すると、接続後にサーバーからメッセージを受信しません。
接続は機能します:
var WEBSOCKET_URL = 'myapponheroku.herokuapp.com/websocket'
var dispatcher = new WebSocketRails(WEBSOCKET_URL);
dispatcher.on_open = function(data) {
console.log('Connection has been established: ', data);
};
フィードバック メッセージが表示されます。
しかし、最初のタスクは、チャットでアクティブなルームをサーバーに要求することです。何も戻っていないことに気付きました。最初のタスクを実行するサーバーのアクションにいくつかのフィードバック メッセージを入れましたが、どれにも到達しませんでした。私が実装したフィードバックは、オブジェクトを返し、それをコンソールに出力するだけの単純な関数のペアです。
Javascript
dispatcher.bind('feedback',function(data){
console.log(data);
});
ルビー
def feedback data
send_message :feedback, {data: data}
end
トリガーされることはありません。何か案は?Heroku を機能させるために特別な設定を行う必要がありますか?
@アップデート
AWS でホストされているライブ サーバーでも同じエラーが発生しました。接続は確立されますが、サーバーからクライアントに何も返されません。
@update2
接続が確立されたときと、最初に開いている部屋を要求したときにアプリがいくつかのファイルを書き込むように、いくつかのコードを書きましたが、ファイルは作成されませんでした。アクションは呼び出されていません。