Workers WebSocketsでClose frameへの自動応答機能が追加
Key Points
- WebSocketのClose frame自動応答機能
- WebSocket仕様準拠の動作実現
- プロキシ用途向けhalf-openモード追加
Summary
Cloudflare WorkersのWebSocketsランタイムが、ピアからClose frameを受信した際に自動的に応答Close frameを送信するようになりました。この変更により、WebSocket仕様とブラウザの標準動作に準拠した動作が実現されます。
Key Points
- 自動Close frame応答: ピアからClose frameを受信すると、ランタイムが自動的に応答Close frameを送信
- readyState遷移: closeイベント発火前にreadyStateがCLOSEDに遷移
- 互換性フラグ: 2026-04-07以降の互換性日付を使用するWorkersでデフォルト有効(
web_socket_auto_reply_to_closeフラグ) - 既存コード対応: closeイベントハンドラー内での手動
close()呼び出しは無視され、既存コードは動作継続 - Half-openモード: WebSocketプロキシ用途向けに
accept({ allowHalfOpen: true })オプションを提供- readyStateがCLOSINGのまま維持され、手動でのclose制御が可能