【问题标题】:What to write in MyServerHandler for Netty websocket在 MyServerHandler 中为 Netty websocket 写什么
【发布时间】:2012-08-17 14:27:55
【问题描述】:

我已经编写了我的 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">&nbsp;</p>
  </body>

并调试这个jsp然后它转到messageReceived然后我不明白该怎么做然后websocket服务器如何与服务器通信。

因此,如果有人可以帮助我找到有关此的文档或对此进行一些解释,那就太好了。

【问题讨论】:

    标签: java websocket netty


    【解决方案1】:

    【讨论】:

    • 您好诺曼,感谢您的回复。我查看了链接,发现一个类 WebSocketServerHandshakerFactory 我需要这个吗?因为如果我使用它,我需要在 websocketx 包下使用 5-6 个类。我也不明白 WebSocketServerIndexPage.getContent(getWebSocketLocation(req));它只是从java类中获取内容我是否也需要这个,因为我有jsp文件而不是这个java来获取内容。我无法完全理解 WebSocketServerHandler.java 类,因为我是 websockets 的新手并第一次使用它
    猜你喜欢
    • 1970-01-01
    • 2015-11-18
    • 2019-02-08
    • 2023-03-10
    • 1970-01-01
    • 2018-07-16
    • 2016-07-16
    • 2012-02-17
    • 1970-01-01
    相关资源
    最近更新 更多