面试题答案
一键面试在WebSocket握手过程中,客户端发送的HTTP请求包含以下关键字段及其作用:
- Upgrade:表明客户端希望将当前连接升级到WebSocket协议,值为
websocket
。例如:Upgrade: websocket
。 - Connection:用于指定连接方式,值通常为
Upgrade
,告知服务器需要进行协议升级。例如:Connection: Upgrade
。 - Sec-WebSocket-Key:是一个Base64编码的随机字符串,用于验证服务器是否支持WebSocket协议。服务器会使用这个密钥进行计算,返回响应时会用到。例如:
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
。 - Sec-WebSocket-Version:指定客户端支持的WebSocket协议版本,目前常用版本为13 。例如:
Sec-WebSocket-Version: 13
。
此外,还可能包含其他常规HTTP请求头字段,如Host
等,作用和普通HTTP请求中的一样,Host
字段指定请求的目标主机和端口,例如:Host: example.com:8080
。