問題タブ [autobahn]

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 投票する
0 に答える
915 参照

javascript - AutobahnPythonとGoogleChromeを使用したWebSocket通信の遅延

これが私が取り組んでいるものです:

webserver.py:

background.js:

ここで、webserver.pyを実行してbackground.jsを実行しても、何も起こりません。クライアントにはエコーがなく、サーバーは接続やメッセージを報告しません。しかし、background.jsをリロードすると、突然「CONNECTEDTOYOU」という前のメッセージがサーバーに表示されます。再度リロードすると同じ効果が得られ、「CONNECTEDTOYOU」メッセージが遅れて表示されます。メッセージを送信した後にsock.close()を実行しようとしましたが、それでも何も生成されません。このランダムな遅延の原因について、私は本当に混乱しています。サーバーを10〜15分間実行したままにしても何も生成されないため、メッセージが表示される前に手動でページを更新する必要があります。これを引き起こしている可能性のあるアイデアはありますか?

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

python - PythonアウトバーンWebSocket

Pythonができるすべてのことに感銘を受けました。私が知りたいのは、JavaScript関数を呼び出すことができるPythonスクリプトを実装できるかどうかです。

私が使用しているPythonコードは、NFCカードを検出し、一意のIDを読み取ります。現在、私はJavaアプレットを使用してHTMLページを操作しています。Pythonはこれに対してはるかに軽量で優れていると思います。

私が試したのは、単純なアウトバーンスクリプトserver.pyとindex.htmlファイルです。

server.pyスクリプトでこのコードを実装しましたが、機能していません。

インデックスファイルにはJavaScript関数があります

server.py内でこの関数を呼び出すにはどうすればよいですか?

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

python - Autobahn WebSocket を使用したトライアル単体テスト

Autobahn を使用するアプリケーションの単体テストを作成しようとしています。

プロトコルから受信したデータを取得し、解析して反応するコントローラーをテストしたいと思います。

しかし、テストがプロトコルを切断する必要があるポイントに達すると ( self.sendClose)、エラーが発生します

私はmakeConnection使用しようとしてproto_helpers.StringTransportいましたが、エラーもあります

私は使用trialしていますが、推奨されていないため、テスト目的でのみダミーのサーバー/クライアントを実行したくありません。

偽の接続とトライアルを使用して、データの送信、データの読み取り、切断などの機能をテストできるように、テストをどのように記述すればよいですか?

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

autobahn - アウトバーンでのサブスクライブでの呼び出しディスパッチ

私は Autobahn を使用しており、実装固有の質問があります。

クライアントがトピックをサブスクライブしたときに、接続されているすべてのクライアント (新しくサブスクライブしたクライアントを含む) に通知を送信する方法を見つけようとしています。コードは次のとおりです(わかりやすくするために編集しています):

しかし、新しくサブスクライブしたメッセージがこのディスパッチを受信して​​いません。ディスパッチ呼び出しは None を返しています。

ここで何が起こっているのですか?

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

python - Python アウトバーン WAMP メッセージング プロトコル


Python の multiprocessing.pipe を介して WAMP プロトコルをパイプしていますが、WampCraClientProtocol を再実装する必要があります。

質問 A: 次のあいまいな場合:


質問 B: excludeMeall way を に置き換えることはできます[self.session_id]か?


/アキ R.

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

python - Autobahn Wamp Cra を使用しているときに認証シークレットを返すために deferred を使用する方法は?

WampCraServerProtocol(Autobahn Python から)サブクラス化し、オーバーライドしていますgetAuthSecret。ただし、簡単なテストを行うと、そのメソッドから deferred を返すことができるようになりました。

...次のエラーが表示されますWampCraClientProtocol

Authentication Error! http://api.wamp.ws/error#generic Deferred instance has no attribute '__len__' None

わかりました、それだけですでに混乱しています。getAuthSecret返される deferred に対して特別な要件はありますか?

わかりました、そのエラーに基づいて、私が返す遅延オブジェクトに (簡単な) lenメソッドを追加しました:

...その場合、次のようになります。

それは私をさらに混乱させます。そのメソッドから deferred を返す正しい方法を知りたいだけです。(単純な単純な文字列を返す場合、すべてが完全に機能することに注意してください)。ありがとう。

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

python-2.7 - 属性ソケットの Massconnect 損失

多くの並列 Web ソケット接続を開くことをシミュレートするためにモジュールを実行していmassconnect.pyますが、しばらくして 15000 接続 (massconnect json で指定) を開こうとすると、次のエラー メッセージが表示されます。

Web ソケット接続の開始が中断され、この例外が発生します。

massconnect.pyアプリの Web ソケット認証を確認するようにモジュールを調整しました。クライアントが割り当てられるたびに一意の認証メッセージを送信するようにテストしています。

すでにMaxUserPortレジストリを 65534 に設定しています。この問題によりメモリが不足するのではないかと考えていましたが、別のマシンで調べたところ、これが原因ではないことがわかりました。

これは既知の python/twisted の問題でしょうか?

@グリフ:

massconnect.py のソース コードは次のとおりです。

スクリプトでは、機密データをダミー文字列に置き換えました。

token.txt ファイルから、Web ソケット経由でテスト対象のアプリケーションに接続している 15000 人の各ユーザーの認証トークンを読み取っています。このようにして、多くの異なるユーザーの接続をシミュレートし、それぞれに対してアクティブな独立した Web ソケット接続を持っています。

残念ながら、スクリプトの実行中 (接続の作成中) に Unhandled Error メッセージが表示されたため、15000 の接続がすべて確立されるまでには至りませんでした。

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

python - カスタム Autobahn WampClientProtocol の外部から publish を呼び出す

プロトコル クラスの外から autobahn/wamp/twisted プロトコル パブリッシュ メソッドを呼び出すにはどうすればよいですか?

https://github.com/tavendo/AutobahnPython/blob/master/examples/wamp/pubsub/custom/client.pyに基づくカスタム python アウトバーン クライアントがあります。カスタム WampClientProtocol クラスの外部からイベントを発行しようとしていますが、問題が発生しています。プロトコル オブジェクトを変数に割り当てると、wamp.py の 1387 行目 ( https://github.com/tavendo/AutobahnPython/blob/master/autobahn/autobahn/wamp.py ) が失敗し、「MyClientProtocol インスタンスには属性がありません」という例外が発生します。工場"。ファクトリ (つまり、「factory.protocol.publish(msg)」) を呼び出そうとすると、発行メソッドがバインドされていないというエラーが表示されます。

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

android - Androidでautobahnライブラリを使用してwebsocketにヘッダーを追加するには?

Android の websocket にAutobahnライブラリを使用していますが、接続中にいくつかのヘッダーを渡したいだけですか? これどうやってするの?

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

javascript - Autobahn の例を動作させることができません (js および python)

AutobahnPython および AutobahnJS ライブラリを使用して WAMP を開始しようとしていますが、公式の例を動作させることができません。これが私がしたことです:

そして、サーバーのデバッグ出力で次のようになります。

最後に、サーバーとクライアントの両方で次のエラーが発生しました (ブラウザー ログ):

ここで何が問題なのですか?これは私のせいですか?