我正在尝试(未成功)连接到 socket.io 服务器,但我不断收到相同的错误:
io.socket.SocketIOException: Error while handshaking
由java.net.ConnectException: failed to connect to my.domain.name.com (port 8080) after 10000ms: isConnected failed: ECONNREFUSED (Connection refused)
.
我刚刚发现我应该在握手时发送一个带有以下值的 cookie:域、路径、名称和值。在尝试了几种可能的方法之后(基于this和this),我最终得到了那段代码,但它仍然无法正常工作:
String cookieString = "domain=" + "my.domain.name.com" + ";path=" + "/" + ";name=" + "auth" + ";value=" + "XXXXXtokenXXXXX";
CookieManager.getInstance().setCookie("http://my.domain.name.com:8080/", cookieString);
String header = CookieManager.getInstance().getCookie("my.domain.name.com:8080/");
final SocketIO socket = new SocketIO("my.domain.name.com:8080/");
socket.addHeader("Cookie", header);
socket.connect(new IOCallback()
{
...
}
CookieManager.getInstance().getCookie(...)
不断返回 null 并且连接仍然失败。
有人可以帮我在标题中添加一个cookie吗?
为了记录,我不知道它会改变什么,但我正在使用这个库:https ://github.com/Gottox/socket.io-java-client
在此先感谢您的帮助 !
马修