我正在尝试实现一个 WebSocket 客户端。我的代码在这里:import org.json.JSONObject;import javax.websocket.*;import java.io.IOException;public class MyClientEndpoint extends Endpoint {private Session session;@Overridepublic 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。
1 回答
![?](http://img1.sycdn.imooc.com/545863e80001889e02200220-100-100.jpg)
达令说
TA贡献1821条经验 获得超6个赞
我找到了问题所在。在JSONObject
我创建的那个中,user
密钥不在第一行,所以我必须拿另一个密钥才能访问user
密钥。问题是,当我尝试访问user
密钥时,我没有收到任何异常。
添加回答
举报
0/150
提交
取消