2011-12-18 108 views
3

似乎在尝试关闭来自Firefox的websocket连接时出现问题(8.0.1)。 使用Chrome时,如果使用WebSocket.close(),则立即关闭连接,在firefox中,我可以等待大约30秒,直到它关闭带有错误的连接。WebSocket连接在FireFox中没有关闭

任何建议,以绕过这个问题在Firefox?

+0

什么是错误? – 2011-12-18 09:37:54

+0

连接到ws://10.0.0.1:8121/chat时页面加载时中断。 – udidu 2011-12-18 09:44:22

+0

你使用什么WebSocket服务器? – kanaka 2012-01-31 19:17:43

回答

1

如果服务器不支持从firefox发送的握手格式,则可能会遇到该错误。我遇到了Aleph的这个错误,因为它没有正确支持握手的Connection头部中的多个值,这对于Firefox来说是合法的,但也与Chrome的行为方式不同(连接头中只有一个值) 。

如果客户端向您发送一条关闭消息(操作码0x8),则服务器应使用关闭消息进行响应以进行干净关闭。从规范:“如果一个端点收到一个关闭帧并且以前没有发送一个关闭帧,端点必须发送一个关闭帧作为响应。”如果服务器由于某种原因断开客户端,服务器应发送一条关闭消息。请参阅规范的5.5.17.4

+1

onOpen事件被触发...所以连接打开 – udidu 2012-01-31 18:15:32

+0

您在什么时候“加载页面时出现中断”?加载页面时(如图所示),还是尝试断开连接后? – kanaka 2012-01-31 19:17:18

+0

我试图断开连接后... – udidu 2012-02-02 11:39:23