WebSocket 协议升级
WebSocket有“Web的TCP”之称,目前,它作为Web Applications 1.0的一部分进行着标准化的制定,是下一代全双工通讯技术。因为采用了Ajax技术,WebSocket协议比HTTP更效率,因此更适合实时、动态的Web应用。同时WebSocket还提供非常简单的API,以供浏览器和服务器之间的双向通讯。这也使得部署Web应用更加容易。
Google最早在WebKit框架中采用了WebSocket,其标准是基于 draft-hixie-thewebsocketprotocol-75。早期的开发者已经可以使用支持WebSoocket的Chrome浏览器进行开发,并且为WebSocket标准的制定提供反馈。
根据用户社区的反馈,WebSocket标准已经更新到draft-ietf-hybi-thewebsocketprotocol-00(也被称作draft-hixie-thewebsocketprotocol-76)。这一版本降低了对握手消息的要求,以便更容易地与HTTP库进行整合。同时还引入了基于随机数的口令-应答机制来预防跨协议的攻击。这些变化使得新版本不再向下兼容,使用不同版本的客户端与服务器之间无法进行通讯。
需要开发者注意的是从 WebKit nightly build r59903和Chrome 6.0.414.0 (r47952)开始,客户端将使用-76版本协议与服务器通讯,对于仍使用-75版本的服务器,会发生连接失败的情况。由于-75版本协议将很快不再为新的浏览器所支持,所以尽快将服务器端的 WebSocket 升级到新版本是非常必要的。
目前,WebSocket协议的更新非常活跃,Goolge也一直在更新他们的产品以适应最近的标准。开发者非常期待收到用户的回复,用户可在issue tracker上提交bug。