问题:Android studio使用okhttp3连接Websocket,调用websocket的close方法报错java.lang.IllegalArgumentException: Code must be in range [1000,5000): 1
解决方案: webSocket对象的close(code,reason)由于code设置的太小,报错,必须要设置在1000,5000之内;
冷知识: okhttp3 的 WebSokcet.colse方法说明:
翻译过来:
尝试启动此 websocket 的正常关闭。在发送关闭消息之前,将传输任何已排队的消息,但后续发送调用将返回false,并且其消息不会排队。
如果调用此方法正常关闭,则返回true。如果 websocket 已经正常关闭或取消,则返回false。
参数:code — RFC 6455第7.4节定义的状态代码。
reason — 关闭原因,不超过123字节的UTF-8编码数据(非字符)或为空。
异常:IllegalArgumentException - 表示 code无效 或 reason字节太长。