問題タブ [actioncable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - RSpec を使用して ActionCable チャネルをテストするにはどうすればよいですか?
ActionCable チャネルをテストする方法を知りたいです。
次のチャット チャネルがあるとします。
メソッドはsubscribed
データベースを更新し、チャネル全体にブロードキャストされる 2 つのストリームを定義しますが、私の質問はより一般的なものであるため、詳細はあまり重要ではありません。
- このチャネルをサブスクライブすることによって、関連するロジックをテストするテストをセットアップするにはどうすればよいですか?
RSpec は、コントローラー アクションなどの同様の相互作用をテストするときに、多くのヘルパー メソッドとさまざまなユーティリティを提供しますが、RSpec と ActionCable に関するものは見つかりませんでした。
ruby-on-rails - Rails 5 - WebSocket ハンドシェイク中のエラー:「接続」ヘッダー値には「アップグレード」が含まれている必要があります
現在、Rails 5.0.0.beta2 を使用してアプリケーションをデプロイしようとしていますが、JavaScript コンソールにアプリケーションをロードすると、
'wss://example.com/cable' への WebSocket 接続に失敗しました: WebSocket ハンドシェイク中のエラー: 'Connection' ヘッダー値には 'Upgrade' が含まれている必要があります
Web サーバーとして Apache/Passenger を使用しています。
他の誰かがこの問題に遭遇しましたか? もしそうなら、どのように解決しましたか?
ruby-on-rails-5 - Rails 5 の actioncable がバッキング データベースを必要とするのはなぜですか?
ばかげた質問かもしれませんが、なぜ websockets ライブラリが Redis または Postgres を必要とするのか知りたいです。
私がそれを使用するすべての場合、そのデータをディスクに保存する必要がある理由はありません。
ruby-on-rails - Rails 5 ベータ版にアップグレードしない ActionCable
現在、Rails アプリを 4.2.5 で実行していますが、すべてを Rails 5.0.0.beta3 バージョンにアップグレードして、他のすべての gem を壊す危険を冒さずに ActionCable を使用したいと考えています。
インターネットで見たガイドに従って
gem 'actioncable', github: 'rails/actioncable'
、ActionCable リポジトリが Rails リポジトリにマージされたため、うまくいかないことを試しました。私も試してみ
gem 'actioncable', github: 'rails/rails'
ましたが、これは ActionCable が Rails にマージされたときに発生したバージョンの再番号付けではうまくいかないようです。(5.0.0.beta* より下の唯一のバージョンは 0.0.0 で、これは空の gem のようです。)
また、マージ前の古いバージョンを見つけることを期待して、ソースを rubygems.org に設定しようとしましたが、失敗しました。
Rails 5 にアップグレードせずに ActionCable を 4.2.5 プロジェクトに統合するにはどうすればよいですか?
逆に言えば、Rails 5 の最初の安定版リリースはいつになると予想できますか? :)
javascript - TypeError: App.cable が定義されていません
私のマシンで ActionCable を実行する際に問題があります。
assets/javascripts/channels には 2 つのファイルがあります。
インデックスコーヒー
と question.coffee
私のapplication.jsファイルは次のようになります:
ケーブル サーバーとレール サーバーを起動し、Firefox コンソールで localhost:3000 にアクセスすると、次の 2 つのエラーが表示されます。
と
Rails 5 beta 3 を使用しています。これを修正するにはどうすればよいですか?