简体   繁体   English

onMessage WebSocket中的消息处理

[英]Message handling in onMessage WebSocket

I'm trying to implement a WebSocket client. 我正在尝试实现WebSocket客户端。

My code is here: 我的代码在这里:

import org.json.JSONObject;
import javax.websocket.*;
import java.io.IOException;
public class MyClientEndpoint extends Endpoint {
private Session session;

@Override
public void onOpen(Session session, EndpointConfig endpointConfig) {
    System.out.println("Web socket opened");
    this.session = session;
    this.session.addMessageHandler(new MessageHandler.Whole<String>() {

        public void onMessage(String message) {
            System.out.println("!!!!!!!!!!!!!!! Retrieved: " + message);
            JSONObject jsonResponse = new JSONObject(message);
            String user = jsonResponse.get("user").toString();
            System.out.println("!!!!!!!!!!!!!!! The User: " + user);
        }
    });
}

public void sendMessage(String message) throws IOException {
    this.session.getBasicRemote().sendText(message);
}
}

The problem comes in onMessage(String message) method, because after the message is printed it seems that I can not process the message in order to create the String user object. 该问题来自onMessage(String message)方法,因为在打印消息后,似乎无法处理该消息以创建String user对象。 How I can implement this? 我该如何实施?

I am using Glassfish Tyrus. 我正在使用Glassfish Tyrus。

Thank you! 谢谢!

I've found where the problem was. 我找到了问题所在。 In JSONObject that I've created, the user key is not on the first row, so I must take another key in order to have access to the user key. 在我创建的JSONObject中, user密钥不在第一行,因此我必须使用另一个密钥才能访问该user密钥。 The problem is that when I try to access the user key I'm not receiveing any exception. 问题是,当我尝试访问user密钥时,没有收到任何异常。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 获取OnMessage()websocket的值 - get the value of OnMessage() websocket Java WebSocket:不会触发onMessage - Java WebSocket: onMessage is not triggered 在调用onMessage()时,在JMS异步消息处理中,消息从队列中删除 - In JMS asynchronous message handling as soon as onMessage() is called, message deleted from queue websocket字符串onMessage,给出java.lang.IllegalStateException:找不到二进制消息处理程序 - websocket string onMessage, gives java.lang.IllegalStateException: Binary message handler not found javax.websocket.DeploymentException:在尝试部署到 Tomcat 时,未找到方法 [OnMessage] 上存在的消息参数的解码器 - javax.websocket.DeploymentException: No decoder was found for message parameters present on the method [OnMessage], when trying to deploy to Tomcat OnMessage(WebSocket)在Glassfish,Java 8中不起作用 - OnMessage(WebSocket) not working in Glassfish, Java 8 到达onmessage Websocket事件HtmlUnit - Reaching onmessage websocket event HtmlUnit Websocket onMessage中的android回调接口 - android callback interface in Websocket onMessage Glassfish Websocket OnMessage方法突然退出 - Glassfish websocket OnMessage method exit suddenly Websocket onmessage 未触发 - 基于 Java 的服务器 - Websocket onmessage not firing - java based server
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM