問題タブ [autobahnws]

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 に答える
1328 参照

python - Autobahn Websocket サーバーの ConnectionRequest.headers ですべての http ヘッダー キーが小文字になる

autobahn Web ソケット サーバーがすべての http ヘッダー キーを小文字に変更するのはなぜですか? カスタム ヘッダー 'Authorization:Bearer $token' を使用して、OAuth2 標準のヘッダーに認証トークンを実装する必要があります。しかし、WebSocketServerProtocol クラスの onConnect メソッドの autobahn 'request.headers' から、すべてのキーが小文字に変更されているようです。この背後にある理由は何ですか? このシナリオで、リクエストから認証トークンを取得するためのキーとして「Authorization」の代わりに「Authorization」を使用できますか?

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

android - なぜ websocket 接続がすぐに閉じるのですか?

Autobahnを使用して wamp を実装するために Android で websocket 接続を作成しようとすると、接続が作成され、すぐに閉じられます。

どうしてこうなった……?の解き方..........?

私のコードの一部を以下に示します

以前にマニフェスト ファイルを投稿しなかったことをお詫び申し上げます。その下に与えられた..

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

python - Redis オペレーションがアウトバーン Web ソケット サーバー リクエストをブロックする

サーバークライアントから取得したメッセージに従って、redisを使用してWebソケットサーバーのデータを保存/更新/削除しています(autobahnを使用して実装-ツイストベースのWebソケット実装)。Redis 操作には、redis-py パッケージを使用しています。サーバーに接続している同時クライアントの数が増えると、リクエストが同期的に処理されることがわかりました。redis 操作が、サーバーが並列クライアント要求を処理するのをブロックしていることがわかりました。なぜこれが起こっているのですか?この問題を解決するにはどうすればよいですか? autobahn プロトコル クラスの onMessage 関数から redis 操作を行っています。

0 投票する
2 に答える
342 参照

python - アウトバーンでコンポーネントの役割を設定する方法

クロスバー 0.11.1 を使用しており、アウトバーン コンポーネントに特定の役割を使用させたいと考えています。以下のように、「ロール」属性をコンポーネントに追加すると:

実行時にこのエラーが発生しますcrossbar start

0 投票する
2 に答える
4805 参照

c++ - Poloniex プッシュ API への接続

Poloniexの Push API に接続したい。彼らのページには、次のように書かれています。

プッシュ API を使用するには、wss://api.poloniex.com に接続し、目的のフィードを購読します。

wss = WebSocket セキュア -> SSL 保護

また、Node.js と Autobahn|JS の例も示しています。

ただし、JavaScript は使用したくなく、代わりに C++ を使用します。Autobahn|CPPと呼ばれる C++ 用の Autobahn-Library もあります。私はそれをインストールし、サブスクライバーのサンプル コードを少し変更して実行しようとしました (基本的には、アドレスとポートをハードコーディングしただけです)。

ここで説明することがいくつかあります。IP アドレス173.236.42.218 は、 api.poloniex.comping するだけでわかりました。

ポート 443 は標準の SSL ポートです。8000 である標準の WAMP/WebSocket ポートを使用しようとしましたが、サーバーはそれを受け入れません。80も受け付けません。

したがって、プログラムを開始すると、出力は次のようになります。

ioサービスを開始しています

サーバーに接続しました

その後、何も起こりません。そのため、WS ハンドシェイクが実行されるsession_start()でコードをスタックする必要があります。これは、80 行目のwamp_session.ippを調べるとわかります。

私の意見では、問題は、API が安全な接続 (ws s ://) を使用したいということです。このコードは SSL で暗号化された接続を作成しようとしていないようで、安全な接続が必要であることをセッションに伝える方法がわかりません。

編集:この質問では、著者は、WebSocket プロトコルを使用する前に最初に http-requestをアップグレードする必要がある場合、Autobahn は混合 http/wamp サーバーを処理できないと述べています。Poloniex がこのような混合型を使用していることは知っていますが、Autobahn| で API にアクセスしようとしました。JSは既に正常に動作し、アップグレード リクエストも送信されます。多分これはアウトバーンです| CPPの問題?

編集 2:上記が当てはまる場合、Http-Update-Request を自分で送信し、SSL 暗号化を接続に入れることは可能ですか? ライブラリに干渉する可能性があるため、わかりません。

0 投票する
2 に答える
8188 参照

python-2.7 - CannotListenError: Couldn't listen on any:9008: [Errno 98] アドレスは既に使用されています

私は、Python を介して websocket で Autobahn のアプリに取り組んでいます。1 つの問題が見つかりました。中断した後にサーバー コードを再起動すると、サーバー コードから次のようなエラーが送信されます。

サーバーを中断した後でも背後で実行されているいくつかの基本的なサービスがあることをエラーで理解していますが、そのようなすべてのポートをどのようにクリアしますか?