我已经编写了我的 websocket 服务器类并编写了 ServerPiplineFactory 类,但我不知道在 MyServerHandler 类中编写。MyServerHandler 类就像
public class DiscardServerHandler extends SimpleChannelUpstreamHandler {
private static final String WEBSOCKET_PATH = "/websocket";
@Override
public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception {
Object msg = e.getMessage();
//ctx.getChannel().write(msg);
//msg.getClass();
if (msg instanceof HttpRequest) {
//ctx.getChannel().write(msg);
} else if (msg instanceof WebSocketFrame) {
System.out.println("I am WebSocketFrame");
}
}
所以我不知道如果我收到HttpRequest我应该写什么以及如何将它发送回浏览器。
所以如果在我的jsp文件中写下类似下面的东西
</script>
var WEBSOCKET_URL = "ws://localhost:8090/websocket";
$(document).ready(function() {
ws = new WebSocket(WEBSOCKET_URL);
ws.onopen = function(event) {
alert("test");
$('#status').text("Waiting....");
};
ws.onmessage = function(event) {
var message = jQuery.parseJSON(event.data);
alert(message);
}
var encoded = $.toJSON("test message");
ws.send(encoded);
});
</script>
<body>
<p id="status"> </p>
</body>
并调试这个jsp然后它转到messageReceived然后我不明白该怎么做然后websocket服务器如何与服务器通信。
因此,如果有人可以帮助我找到关于此的文档或对此进行一些解释,那就太好了。