zoukankan      html  css  js  c++  java
  • webSocket的学习以及问题的解决

    查过很多资料,感觉大部分都讲的不够详细,做为一个新人我从webSocket的基本开始学起,

    首先webSocket的原理其实和Http差不多,但是由于Http只能被动的去向服务器请求消息,导致缺点太明显,然而webSocket就像一个本事只要连接终生受益,只要连接服务器就一直朝你推送信息,就像你有了一个男朋友,天天嘘寒问暖,接触安卓必然会遇到她。

    很多人会看到这不就是用来实时通讯的吗?但是只要连接上了就一直不断,但是我使用她时就遇到连接端看的问题。

    刚连接成功,过了一会就自动连接失败,

    我把自己的源码拿出来

    try{
    url = ip.getText().toString();
    if(url != ""){ //判断url 不为空、并且webSocket也不为空
    URI serverURI = URI.create("ws://"+url+":4399");
    webSocketClient = new WebSocketClient(serverURI) {
    /*
    * 连接建立成功调用的方法
    * */
    @Override
    public void onOpen(ServerHandshake handshakedata) {
    sb.append("服务器状态:");
    sb.append(handshakedata.getHttpStatusMessage());
    sb.append(" ");
    sb.append("已连接");
    msg.obj = sb.toString();
    issueHandler.sendMessage(msg);
    }
    /*
    * 收到客户端消息后调用的方法
    * @param message 客户端发送过来的消息
    * */
    @Override
    public void onMessage(String message) {
    Message handlerMessage = Message.obtain();
    handlerMessage.obj = message;
    handler.sendMessage(handlerMessage);
    }
    /*
    * 连接关闭调用的方法
    * */
    @Override
    public void onClose(int code, String reason, boolean remote) {
    msg.obj = "未连接";
    issueHandler.sendMessage(msg);
    }
    /*
    * 发生错误时调用
    * */
    @Override
    public void onError(Exception ex) {
    sb.append("错误信息 info:"+ex);
    sb.append(" ");
    msg.obj = sb.toString();
    issueHandler.sendMessage(msg);
    }
    };
    webSocketClient.connect();
    }else{
    Message msg = handler.obtainMessage();//同 new Message();
    msg.obj = "请输入IP地址!";
    issueHandler.sendMessage(msg);
    }
    }catch (Exception e){
    e.printStackTrace();
    }
  • 相关阅读:
    fastjson(转)
    FastJson
    FastJson处理Map List 对象
    spring-data-redis RedisTemplate操作
    Spring-data-redis:特性与实例(转载)
    Spring Boot 支持多种外部配置方式
    springBoot----@ConditionalOnxxx相关注解总结
    Centos7 install Openstack
    Centos7 install Openstack
    Centos7 Openstack
  • 原文地址:https://www.cnblogs.com/hahabengbeng/p/10951195.html
Copyright © 2011-2022 走看看