在提出这个问题时,Mozilla说FF7实现了第8版(草案10):
https://developer.mozilla.org/en/Firefox_7_for_developers#WebSockets
最新的Chromium博客日期为08-01-2011,也说Chromium支持相同的草案10:
http://blog.chromium.org/2011/08/new-websocket-protocol-secure-and.html
两者都会导致相同的链接:
http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10
然后在维基百科上,它说FF7和Chrome 14也实现了草案10:
http://en.wikipedia.org/wiki/WebSocket
但是当我在websocket.org上测试FF7和Chrome 14时
http://websocket.org/echo.html
Chrome 14通过,FF7失败。 BTW,IE 9也失败了,但Opera 11.52通过了。那么我怎么知道哪个版本在websocket.org上运行并确定FF7是否确实实现了草案10?
答案 0 :(得分:1)
如果您查看该页面的源代码,您会注意到他们正在实现这样的API:
function testWebSocket()
{
websocket = new WebSocket(wsUri);
websocket.onopen = function(evt) { onOpen(evt) };
websocket.onclose = function(evt) { onClose(evt) };
websocket.onmessage = function(evt) { onMessage(evt) };
websocket.onerror = function(evt) { onError(evt) };
}
但是当涉及到firefox时,你应该在第一行使用它来在FF上使用它:
websocket = new MozWebSocket(wsUri);
将FF的朋友们命名为:D
希望这有帮助!
示例:
function connect() {
if ('WebSocket' in window) {
websocket = new WebSocket('ws://' + window.location.hostname + ':4502/chat');
}
else if ('MozWebSocket' in window) {
websocket = new MozWebSocket('ws://' + window.location.hostname + ':4502/chat');
}
else {
//not supported
return;
}
}
答案 1 :(得分:0)
http://websocket.org/echo.html网站已更新 - 它正在使用FF7:
单击connect后,您将收到有关MozWebSocket对象的“警告”: 信息:此浏览器使用MozWebSocket构造函数支持WebSocket