如果我没有服务器详细信息,那么谁将建立或安装Web套接字连接?管理员(负责我们主机的管理员)可以建立连接并向我提供websocket的URL以便在android或角度代码中使用吗?
使用php编写代码是否有必要?
我希望服务器管理员可以安装和配置Web套接字,并提供在聊天模块中使用。
答案 0 :(得分:0)
Web管理员(Ops)可以帮助创建域名,但是您必须编写服务器端代码来处理WebSocket连接。您可以使用任何支持websocket的编程语言。例如
使用Java Websocket,您只需定义ServerEndpoint
并将war
(网络存档)部署到任何主机或云提供商(亚马逊云,谷歌云等), / p>
@ServerEndpoint("/chat/{clientId}")
public class MyWebsocketServer {
@OnMessage
public String handleMessage(@PathParam("clientId") String clientId,
String message,
Session session) {
System.out.println("chat message: " + clientId + "/" +message);
return "hi how are you doing?";
}
}
现在,以javascript作为客户端,用于建立WebSocket连接的代码将是:
var clientId = Math.random().toString(36).substring(2) + (new Date()).getTime().toString(36);
var webSocket = new WebSocket("ws://localhost:8080/my-app/chat/" + clientId);
本地主机意味着我在同一主机上同时运行服务器和客户端,在您的情况下,当客户端在电话上运行时,服务主机可能是www.mike-simons.com/chat
示例:https://github.com/duwamish-os/chat-server_websocket-java