WebSocket 与wss://localhost:8025/websockets/server
的连接失败: WebSocket 打开握手超时
请帮助我做错了!
服务器端代码:
启动服务器
Server server = new Server("localhost", 8025, "/websockets", WebSocketServerEndpoint.class);
server.start();
@ServerEndpoint(value = "/server")
public class WebSocketServerEndpoint {
@OnOpen
public void onOpen(Session session) throws Exception
{
Logger.write("communication_clientservice", "WebSocket >> Connected ... " + session.getId());
}
@OnMessage
public void onMessage(String message, Session session) throws IOException
{
Logger.write("communication_clientservice_websocket", "UI to Websocket >> command received at Websocket >> " + message);
}
@OnClose
public void onClose(Session session, CloseReason closeReason) throws IOException
{
Logger.write("communication_clientservice_websocket", "WebSocket >>"+ String.format("Session %s closed because of %s", session.getId(), closeReason));
session.close();
}
}
客户方 客户端连接服务器
var ws = new WebSocket("wss://localhost:8025/websockets/server");
ws.maxTimeout = 5 * 1000;
ws.onopen = function()
{
// Web Socket is connected, send data using send()
ws.send("{\"from\":\"shabeer\"}");
//alert("Message is sent...");
var elem = document.getElementById("receivedmsg");
elem.innerHTML = "panic request send";
};
ws.onmessage = function (evt)
{
var received_msg = evt;
//alert("Message is received..." + received_msg);
var elem = document.getElementById("receivedmsg");
elem.innerHTML = "Response received : " + received_msg;
};
ws.onclose = function()
{
// websocket is closed.
///alert("Connection is closed...");
setTimeout(function(){WebSocketTest()}, 5000);
};
答案 0 :(得分:0)
默认情况下,Web Socket服务器以ws(不受HTTP保护)启动。如果您需要SSL(WSS),则必须在服务器对象中明确设置它。
如果您在客户端使用以下网址,则该网址应该有效。
wss://localhost:8025/ to ws://localhost:8025/