本文へ移動
バージョン: 4.x

バージョン 4.5.0

2022年4月23日

サーバー

バグ修正

  • typings: TypeScript 3.xとの互換性を確保 (#4259) (02c87a8)

機能

発信パケットに対するキャッチオールリスナー

これはonAny()に似ていますが、発信パケット用です。

構文

socket.onAnyOutgoing((event, ...args) => {
console.log(event);
});

531104dで追加。

ブロードキャストと複数の確認応答の期待

構文

io.timeout(1000).emit("some-event", (err, responses) => {
// ...
});

8b20457で追加。

maxHttpBufferSize値のネゴシエーション

HTTPロングポーリングのクライアントがmaxHttpBufferSize値を下回るために送信する必要があるパケット数を決定できるように、"maxPayload"フィールドがEngine.IOハンドシェイクに含まれるようになりました。

これは、JSONエンコードされたハンドシェイクデータにフィールドを追加するだけなので、プロトコルの新しいメジャーリビジョンを必要としない後方互換性のある変更です(v4のままです)。

0{"sid":"lv_VI97HAXpY6yYWAAAC","upgrades":["websocket"],"pingInterval":25000,"pingTimeout":5000,"maxPayload":1000000}

088dcb4で追加。

依存関係

クライアント

機能

切断イベントの追加の詳細

"disconnect"イベントには、問題が発生した場合のデバッグに役立つ追加の詳細が含まれるようになりました。

HTTPロングポーリングモードでペイロードがmaxHttpBufferSize値を超えた場合の例

socket.on("disconnect", (reason, details) => {
console.log(reason); // "transport error"

// in that case, details is an error object
console.log(details.message); "xhr post error"
console.log(details.description); // 413 (the HTTP status of the response)

// details.context refers to the XMLHttpRequest object
console.log(details.context.status); // 413
console.log(details.context.responseText); // ""
});

b862924で追加。

発信パケットに対するキャッチオールリスナー

これはonAny()に似ていますが、発信パケット用です。

構文

socket.onAnyOutgoing((event, ...args) => {
console.log(event);
});

74e3e60で追加。

maxPayload値に従って書き込みバッファーをスライスする

サーバーは、ハンドシェイクの詳細に"maxPayload"フィールドを含めるようになりました。これにより、クライアントはmaxHttpBufferSize値を下回るために送信する必要があるパケット数を決定できます。

46fdc2fで追加。

依存関係