近日,微软发布了HTML5 Labs,旨在为.NET开发者提供一个平台,可以运行使用了不稳定的Web标准规范的应用原型。其意图在于拉紧与开发者社区的关系,并且尽最大可能实现草案规范。首先发布的两个原型是IndexDB(基于Web规范草案的一个应用,用于在浏览器中存储大容量的结构化数据)和一个示例性的WebSocket实现。
微软的实现
从微软站点下载的内容包含了一个.NET实现,其中有:
WebSocket草案
WebSocket是个草案协议,用于定义双向全工的通信协议,以便让Web浏览器和Web服务器能够无需通过HTTP协议就可以实现相互间的通信。Web浏览器和Web服务器都需要实现WebSocket协议。一旦浏览器与服务器之间建立好初始连接后就可以开始通信了。如果采用,那么WebSocket将会代替目前开发者所使用的HTTP长轮询机制。目前的WebSocket API处于W3C Web应用工作组的管理之下,而IETF则拥有工作草案。
目前,FireFox 4、Chrome、Opera 11、Safari 5以及IE 8与IE 9已经实现了WebSocket草案。Apple甚至在最新发布的iOS 4.2中实现了WebSocket,而开发者则必须得等待Windows Phone 7和Android的支持。
WebSocket所经受的挫折
上个月初,由于安全原因,FireFox 4和Opera初步禁止了WebSocket实现。问题并不是出现在Web浏览器端,也不是WebSocket本身的问题,而是大多数公司与企业防火墙缓存代理的糟糕实现。在Firefox中,我们可以通过about:config重新启用WebSocket,只需启用network.websocket.override-security-block选项即可。人们所达成的共识是最终采用WebSocket可以在一定程度上减少目前的安全问题,但也有一些人认为XMPP完全可以解决这些问题。
查看英文原文:HTML5 Labs Launched and WebSocket Update