5

簡単な質問ですが、おそらく簡単な答えです: 特定のクライアントが切断されたことをサーバー上でどのように知ることができますか? 基本的な使用例: サーブは、プレーヤーが接続を切断したかどうかを知る必要があります。

4

5 に答える 5

4

publish 関数では、次のようにソケットのクローズ イベントを監視できます。

this.session.socket.on "close", -> # do your thing
于 2012-09-20T03:09:31.630 に答える
4
 Meteor.publish("yourPublishFunction", function()
        {
            var id = this._session.userId;
            this._session.socket.on("close", Meteor.bindEnvironment(function()
            {
              console.log(id); // called once the user disconnects
            }, function(e){console.log(e)}));

            return YourCollection.find({});
        });
于 2013-08-19T14:16:55.390 に答える
1

たぶん(サーバーコード内)

Meteor.default_server.sessions.length

また

Meteor.default_server.stream_server.open_sockets.length
于 2012-09-11T22:27:47.227 に答える
0

サーバーでイベントを作成し、 ajaxを使用してブラウザから呼び出すことができます。これは、セッション値をヘッダーに使用して settimeintervalを使用して、短い時間間隔の後に呼び出します。サーバーがユーザーからリクエストを取得しない場合、接続が切断されたことを意味します

于 2012-09-08T20:05:29.147 に答える