我已经开发基于浏览器的多人游戏已有一段时间了,并且我已经在各种环境(客户端办公室,公共(public)wifi等)中测试了不同的端口可访问性。一切都进行得很好,除了一件事:我不知道是如何读取错误号。或接收到onerror事件时的描述。

客户端网络套接字是用javascript完成的。

例如:

// Init of websocket
websocket = new WebSocket(wsUri);
websocket.onerror = OnSocketError;
...etc...

// Handler for onerror:
function OnSocketError(ev)
{
    output("Socket error: " + ev.data);
}

“输出”只是一些写入div的实用程序函数。

我得到的是ev.data的“未定义”。总是。我一直在搜寻,但是似乎没有关于此事件具有什么参数以及如何正确读取它的规范。

任何帮助表示赞赏!

最佳答案

Event处理程序收到的错误onerror收到is a simple event not containing such information:



您可能会更好地聆听close事件,它是 CloseEvent ,确实具有CloseEvent.code属性,其中包含根据RFC 6455 11.7的数字代码和CloseEvent.reason字符串属性。

但是请注意,CloseEvent.code(和CloseEvent.reason)are limited可以避免网络探测和其他安全问题。

关于javascript - Websocket onerror-如何读取错误描述?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18803971/

10-10 06:53