websocket小程序开发测试环境可以,但是真机模式失败的原因解答

环境:消息推送需要使用长联讯,所以采用websocket

遇见问题:微信开发者工具可以使用websocket,但是使用手机真机调试websocket无响应

解决思路:

一.确保websocket调用api的正确使用顺序

二.服务器环境的搭建以及合法域名的校验

三.开发者后台要配置wss和ip白名单

第一步:确保API的正确调用

uni.connectSocket({  //发起链接

        url:'wss://integral.gzyxxy.com:9603',  //websocket链接的url地址

        success:()=>{  //连接成功后的回调

                uni.onSocketOpen((res)=>{  //监听WebSocket连接打开事件。

                        uni.sendSocketMessage({  //发送给服务器消息。

                        data:this.ids,

                        success:(res)=>{  //监听返回消息。

                                console.log(res)

                        },

                        fail: (err) => {

                                console.log(this.ids)

                        }

                 })

                    uni.onSocketMessage((res)=>{  //接收服务器返回的消息。

                                    this.items.push(res.data)

                })

            })

}

二.服务器搭建以及合法域名的校验以及wss的配置

1.这里提到的服务器搭建,主要是因为在微信小程序中,websocket支持的一定是wss的通信协议,当然也不是说你用ws不行,但是我感觉测试可以,如果要配置上线的话,还是需要使用wss的!可以在后台管理界面进行配置

---开发---开发设置---服务器域名设置

切记:一个月只有五次的修改机会!慎重哦

修改成功后,可以打开开发工具的详情页面进行查看,来查看是否配置成功


这里配置成功,就表明可以了


2.合法域名的校验

众所周知,小程序在开发过程中,只要你点击不校验合法域名,就可以不进行跨域处理,但是如果要求上线,一定要进行配置,防止出现跨域问题。然后合法域名也是要求https,需要携带证书!

三.会遇到的问题!

当你配置完所有以后,你会发现在开发环境下,你是可以使用websocket的,但是当你选择真机测试的时候,你会发现你的websocket失效了,你如果打开两个管理控制台,你会发现,开发工具的上面,长联讯属性type:为websocket,但是真机环境下的长联讯属性type:为xhr!

当时我以为是我api调用的问题,查阅了好多资料,都没得到解决!最后在微信开发社区里面找到了和我遇见一模一样问题的人!询问以后才得知解决办法!!!说实话,解决方法,让我有点哭笑不得


开发工具上的效果



真机测试的效果

是不是和我遇到的一样!!!

四.解决办法!!!

直接上线就可以了,线上环境就可以成功了!如果觉得直接上线不好!你可以提交为体验版本即可

综上所述...websocket在真机上和开发工具上的不一致,就能得到解决了

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   今天是2018年04月21日。   过去的这一个多月里,我的工(开)作(发)任务转战回了游戏。短短的一个月里,...
    happyJared阅读 12,625评论 3 27
  • 原文地址:http://www.ibm.com/developerworks/cn/java/j-lo-WebSo...
    敢梦敢当阅读 12,878评论 0 50
  • 使用 WebSocket 客户端连接 MQTT 服务器 [TOC] 简介 近年来随着 Web 前端的快速发展,浏览...
    wivwiv阅读 9,793评论 0 8
  • 昨天傍晚一桌人在池塘边吃饭,忽然一阵大风吹来,旁边一棵大树的枝丫摇起来,黄色的绿色的叶子一齐晃动,簌簌作响。 “啊...
    木下酒肆阅读 1,917评论 0 2
  • 4月23日,世界读书日,天恰好下起了雨。如果没有工作上的繁忙,大可以择一册好书,倚着窗前,听窗外雨落风...
    宜修书屋阅读 2,929评论 0 2