简单的客户端代码
#coding=utf-8 from websocket import create_connection msg = {'a':'a','b':'b' } ws = create_connection("ws://ws.domAIn.com:8888") sendmsg = u'{"msg": '+str(msg)+'}' print(sendmsg) ws.send(sendmsg) print(ws.recv()) ws.close()
但是在使用中文消息的时候,python显示就是乱码如下: 大ç¦åˆ©å‘设计方 使用了很多种解码方式均失败
几经周折终于找到解决方案,因为传到python元数据就在网络通讯层自动转码时已经使用某种算法转义,python默认反转义并不能正常解析,使用几种其他转义方法也不生效, 终于发现需要在发送时,客户端先将str消息转为unicode,(字符串前面加个u)
然后在服务端,message = message.encode('raw_unicode_escape').decode()
,这样就可以完美解析出中文字符
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)