問題タブ [socketstream]
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.
node.js - Karma を使用して AngularJS/SocketStream/Node.js アプリをテストする方法
SocketStream/node.js サーバーによって配信される AngularJS アプリケーションに取り組んでいます。SocketStream サーバーで API 関数を呼び出す AngularJS サービスがあり、これまでのところ順調に進んでいます。
しかし今、最初のテストを書き始める時が来ました。最初に頭に浮かんだテスト フレームワークは Karma/Jasmine です。これは AngularJS の推奨設定であるためです。
ここまでは順調ですが、AngularJS モジュールは「require」(require.js ではなくSocketStream のバージョン) を使用してインポートされ、サーバー API 呼び出しはテストの一部であるため、カルマを構成して SocketStream (少なくともそのクライアント側) をロードする必要があります。 .
「 https://github.com/yiwang/angular-phonecat-livescript-socketstream 」をよく見ましたが、この例を実行すると実行時エラーが発生します。おそらく、さまざまな依存関係の新しいバージョンがインストールされているためです。
app.js に 'ss.client.packAssets()' を追加して 'SS_PACK=1 node app.js' を実行して SocketStream アプリをパックすることで 'required' を解決できましたが、カルマを開始するとエラー メッセージがログに記録されます。言って:
「1368026081351.js」は SocketStream パック アセット ファイルです。ロードしないと、「require is undefined」のようなエラー メッセージが表示されるため、SocketStream の require コード内のどこかでエラーが発生していると考えられます。また、カルマを DEBUG モードで実行し、提供されているすべてのファイルを確認できるためです。
私は何が起こっているのかを知るためにさまざまなアプローチを試みてきましたが、今では役に立ちません。だから私の質問は:
Karma を使用して AngularJS/SocketStream のテストに成功した人はいますか? この問題を修正する方法、または少なくともデバッグする方法について誰か提案がありますか? 代替案/より良い解決策はありますか?
socketstream - クライアントコードをモジュールとして提供せずに、「libs」フォルダーの外に提供する方法は?
socketStream/Node.js/Karma questionに記載されている問題の回避策を準備しています。
とにかくコードを実行するソケットストリームサーバーがある場合、Jasmine を実行するためにカルマは実際には必要ないと判断しました。
SocketStream クライアント コードの libs フォルダーから jasmine ファイルをインクルードすると、それが機能します (TestRunner.html ファイルを編集して SocketStream ビューにした後)。問題は、実際のテストを実行するための仕様ファイルが、「libs」フォルダーに配置した場合にのみ実行されることです。
それらを「/tests/specs」フォルダーに入れたいのですが、そうするとモジュールとして配信されます。「libs」フォルダーと同じように動作するようにフォルダーをマークする方法、つまりコンテンツをモジュールとしてパックしない方法はありますか?
node.js - インターネットドメイン名をソケットストリームアプリケーション/ポートに向ける
3 つのインターネット ドメインを 3 つの異なる socketstream 3.x アプリケーションに向けるためのガイドラインを探しています。
3 つの ss アプリを実行しているとします。
99.99.99.1:4010、99.99.99.1:4020、99.99.99.1:4030
そして私は3つのドメインを所有しています
www.myfirstdomain.com、www.myseconddomain.com、www.mythirddomain.com
ドメインをアプリケーションにルーティングするための推奨されるアプローチは何ですか? どういうわけか ss に URL ヘッダーか何かを認識させますか? サーバー上の3つの異なるips? おそらくノード用のルーティングモジュールが必要ですか? ss /app.js で何を変更しますか?
前もって感謝します !
https - HTTPS に変更された SocketStream デモ アプリが接続に失敗する
バージョン3.5を使用。
デモ アプリは、デフォルトの HTTP 設定でうまく機能します。スライドショー ツアーで HTTPS の使用に関する提案に従ってみましたが、うまくいきました。ページは正しく表示されますが、チャット メッセージは投稿されません。コンソールを開き、カウントアウトまで数秒ごとに繰り返されるこれらのメッセージを取得します。
entry.coffee
ロギング機能以外は何もありません。Connection down :-(
によってトリガーされた " " が見つかった場所ss.server.on disconnect
です。
node.js - engine.io / wss / SSL / HTTP : 設定方法?
私は SocketStream (v 3.5) を使用しており、HTTPS サーバーを使用するように構成しています。ページは提供されますが、Engine.io 領域のどこかで WebSocket 接続が失敗します。
node_modules に進み、SSL / WSS のソケット接続を構成する方法についての手がかりを探しています。
どんな助けでも大歓迎です。
javascript - socketstream はサーバーの ss.event.on に作用できますか
Pub/Sub システムを使用して Redis サーバーにメッセージを公開しています。これらのメッセージをリッスンして処理するために、node.js で Socketstream 0.3 を使用しています。クライアント コード (app.js) では、ss.event.on を使用してこれらのメッセージにうまく対処できます。
ただし、これらのメッセージの一部では、ブラウザーが Web サイトにアクセスしていない場合でもシステムを動作させたいと考えています。つまり、ルートの app.js (または app.coffee) または server/rpc のいずれかに配置して、ブラウザーが Web サイトを開いたかどうかに関係なく、メッセージが到着するたびに実行されるようにしたいと考えています。
これを実行しようとすると、ss.event.on (オブジェクトが定義されていません) でエラー メッセージが表示されます。ss.api.event.on も使用してみましたが、クライアント コードでしかメッセージを受信できないようです。これは本当ですか?私が望むものを達成できる別の方法はありますか?
ピーター
javascript - SocketStream がクライアントに新しく追加された JS ファイルから何も実行しない
app
フォルダー内のすべてのJSファイルをロードするためにこれを行っています
には 3 つのファイルがありapp
、2 つは既定のプロジェクトに付属しており、1 つは私が追加したものです。最初の 2 つは正常に動作しますが、追加したものは実行されません!
面白いことに、そのファイルにエラーがある場合、Chrome コンソールでエラーを設定しましたが、関数が実行されず、ページに変数が追加されませんでした。
理由はありますか?