問題タブ [private-pub]

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.

0 投票する
1 に答える
262 参照

ruby-on-rails - Rails 4のprivate_pubでサーバーアドレスを変更できません

私はローカル マシンでプライベート パブを使用しており、正常に動作しますが、プライベート vps で Rails アプリを試しているので、話は別です。private_pub.yml のサーバー文字列を vps の IP に変更しようとしてきましたが、何をしても何も変わらないことに気付きました。常に localhost:9292 を提供し続けます。

だから私は自分のローカルマシンで同じことを試しました。"http://192.168.1.11:9292/faye"ここでわかるように、開発環境と本番環境でサーバー文字列を変更しました(念のため、両方の環境でサーバーアドレスを変更しました...):

そして、実行するbundle exec rackup private_pub.ru -s thin -E productionと常に次のようになります。

では、private_pub.yml ファイルのサーバー アドレスを読み取らないのはなぜでしょうか。private_pub は非推奨すぎますか?

回答、提案、ヒントは大歓迎です:)

0 投票する
1 に答える
433 参照

ruby-on-rails-4 - Amazon Linux EC2 で private_pub と faye を実行する

私はこのRailsチャットチュートリアルに従っており、ローカルで成功しています。しかし、Amazon EC2 Linux にデプロイするのに問題がありました。faye.js の読み込みエラー

http://localhost:9292/faye.js net ::ERR_CONNECTION_REFUSED を取得します

何かを設定する必要がありますか? ところで、セキュリティグループの受信と送信の両方にポート 9292 を既に追加しました。

ありがとうございました。

0 投票する
1 に答える
435 参照

ruby-on-rails - Rails アプリが Vagrant の private_pub に接続できない

private_pub を使用する Rails アプリがあります。どういうわけか、アプリを private_pub に接続できません。

private_pub を 0.0.0.0 にバインドする方法はありますか?

レールサーバーを実行する

private_pub を開始

Chrome コンソール ログ

0 投票する
1 に答える
27 参照

ruby-on-rails - クライアント側の RJS とインライン Ruby コードを混在させるにはどうすればよいですか?

私はPrivatePubを使用していますが、ここで奇妙な動作が発生しています。1.9.3詳細を説明する前に、Rubyと Railsを使用していることに注意してください3.2.2

私が持っているとしましょうTestsController

そしてtests/index.html.erb

そしてtests/create.js.erb

シンプルでわかりやすい。今私の問題は、createアクションを実行するたびに、何らかの理由<% puts "*"*100 %>で常に実行されることです(if(false)ステートメントを作成した場合でも)。

ルビーifを使用するだけで、次のように正常に動作するはずです。

しかし、まだいくつかのクライアント側の検証を行いたいです (たとえば、div が存在することを確認し、それに応じていくつかのパーシャルをレンダリングするなど)。

しかし<%= j render(@messages) %>、常にレンダリングされるようです。

この問題に取り組み、クライアント側の if ステートメントと ruby​​ テンプレート コードを内部で使用するにはどうすればよいですか? 現時点では、内部の何か<%%>がトリガーされるようで、この動作は望ましくありません。

0 投票する
1 に答える
450 参照

ruby-on-rails - RailsでPrivatePubとFayeを使用して現在のサブスクリプションの数を見つけるにはどうすればよいですか

私はPrivatePubと呼ばれるRuby gemを使用しています。これはFayeを使用してPubSubメッセージングを提供します

PrivatePub gem は、特定のトピックにメッセージをサブスクライブ/送信するためのビュー ベースのヘルパーをいくつか提供します。Faye に接続されている現在の各サブスクリプション オブジェクトの ID を取得する API 呼び出しを含めるように PrivatePub を拡張しようとしています。誰かがこれを達成する方法を説明したり、PrivatePub API から現在のすべてのサブスクリプションを解決する別の方法を見つけるのを手伝ってくれたりできますか?

0 投票する
0 に答える
312 参照

ruby-on-rails-4 - 拒否されたサーバー接続でプライベート パブを構成できませんでした

IP 上のサーバーでプライベート パブを構成しようとしています。以前は同じ構成が別のサーバーで機能していましたが、現在は機能していません。

private_pub.ru

走るrackup private_pub.ru -s thin -E productionと下に落ちます

しかし、ブラウザでカールしたり呼び出したりしようとすると、

また、fayeサーバーの同じIPを指す別のドメインを試し、localhost:9292以下のようにプロキシしました

しかし、それもうまくいきませんでした。問題の解決方法を教えてください。

0 投票する
1 に答える
32 参照

ruby-on-rails-4 - Railsでfayeを使用してユーザーAが新しいコメントを追加したときに、ユーザーBのカスタムレイアウトを作成するにはどうすればよいですか?

faye を使用してディスカッション レール アプリを作成しました。動作しますが、問題が 1 つあります。

期待される結果: ユーザー A がコメントした場合、彼の画面では、彼の画像は右側にあるはずです。ユーザー B がチャット ウィンドウでメッセージをリアルタイムで見ると、ユーザー A の画像が左側に表示されます。

得られた結果:

ユーザー A のメッセージはユーザー B のチャット ウィンドウに表示されますが、ユーザー A の画像は右側に配置されます。

Faye は、私が書いたif 条件を考慮せずに、すべてのユーザーに同じメッセージをプッシュしています。

これが私のコードです:

create.js.erb:

user_message パーシャルの if else 条件は、ユーザーの画像を異なる位置に配置します。

index.html.erb :

このアプリはherokuでホストしており、完全なソース コードはgithubにあります。

0 投票する
0 に答える
193 参照

ruby-on-rails - Rails gem クラスのオーバーライド実装のロード順

使用している gem の特定の ruby​​ ファイルを置き換えたい。

私が使用している宝石は private_pub です: https://github.com/ryanb/private_pubで、置き換えようとしているファイルは次のとおりです: https://github.com/ryanb/private_pub/blob/master/lib/private_pub/faye_extension .rb

そこで私がやろうと決めたのは、私の Rails プロジェクトで、次のコードを含む faye_extension.rb という名前の config/initializers に新しいファイルを追加することでした:

'PrivatePub::FayeExtension' を一番上に含めた理由は、FayeExtension クラスが gem の実装をオーバーライドするように、自動ロードを強制するためでした。ただし、このロジックを駆動するコード パスを実行すると、追加した puts ステートメントがログに表示されません。「オーバーライドがロードされました」が表示されることに言及することが重要ですが、これが発生すると信じており、その後、どういうわけか、gem の実装が使用されます。これにより、gem の faye_extension.rb が私のバージョンの代わりに使用されていると思われます。

gem のバージョンではなく、自分のバージョンを強制的に使用するにはどうすればよいですか?