バージョン 4.5.0
2022年4月23日
サーバー
バグ修正
機能
発信パケットに対するキャッチオールリスナー
これは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で追加。