在将 HTTP 连接升级到 websocket 时,可以在可选的 HTTP 标头“Sec-WebSocket-Protocol”中提供一个或多个子协议。
如果服务器接受任何子协议,它会以 HTTP 响应代码 101(“HTTP/1.1 101 交换协议”)进行响应,并包含指示所选子协议的 HTTP 标头“Sec-WebSocket-Protocol”。
但是服务器应该如何正确处理未知/不受支持的子协议呢?
这是否应该在 HTTP 连接“内”完成——通过使用一些 HTTP 响应代码?
还是应该将连接升级到 websocket——并通过发送带有一些预定义 websocket 状态代码的“关闭帧”立即被服务器关闭?
RFC6455 怎么说?我无法得出结论。现有的服务器实现如何处理它?
问候/每/