啟用 WebSocket 訊息壓縮
設定 perMessageDeflate 引數以啟用 permessage-deflate WebSocket 擴充套件。隨後,Bun 會與支援該擴充套件的客戶端協商壓縮。除非針對每條訊息選擇啟用壓縮(見下文),否則通過 ws.send() 傳送的訊息仍不會被壓縮。
Bun.serve({
// ...
websocket: {
// 啟用壓縮
perMessageDeflate: true,
},
});
要為單條訊息啟用壓縮,請將 true 作為第二個引數傳遞給 ws.send()。這要求已啟用 perMessageDeflate;否則 Bun 會以未壓縮的形式傳送訊息。
Bun.serve({
// ...
websocket: {
perMessageDeflate: true,
async message(ws, message) {
// 傳送壓縮訊息
ws.send(message, true);
},
},
});