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サーバーがサーバーと通信する方法がわかりません。
ですから、誰かが私がこれに関する文書を見つけるのを手伝ってくれるか、これについて少し説明してくれるなら、それは素晴らしいことです。