onMessage WebSocket 中的消息处理

我正在尝试实现一个 WebSocket 客户端。


我的代码在这里:


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);

}

}

问题出在onMessage(String message)方法上,因为在打印消息后,我似乎无法处理消息以创建String user对象。我该如何实施?


我正在使用 Glassfish Tyrus。


慕桂英546537
浏览 766回答 1
1回答

达令说

我找到了问题所在。在JSONObject我创建的那个中,user密钥不在第一行,所以我必须拿另一个密钥才能访问user密钥。问题是,当我尝试访问user密钥时,我没有收到任何异常。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java