使用uniapp开发微信小程序时,使用websocket,有两个功能模块使用websockey,一个是聊天功能,一个是实时定位功能,聊天功能连接websocket没有问题,但是定位功能连接时虽然也走success但是并没有连接到后台,过个几秒也就报错了,这是咋回事,url都是相同的
代码如下
聊天功能代码
if (uni.getStorageSync("userInfo") != '' && uni.getStorageSync("userInfo") != null) {
let userInfo = uni.getStorageSync("userInfo")
console.log(this.wsUrl + '/webSocket/' + userInfo.id)
this.socketTask = uni.connectSocket({
url: this.wsUrl + '/websocket/' + userInfo.id, //仅为示例,并非真实接口地址。
success: (resData) => {
console.log("链接成功")
console.log(resData)
},
fail: (err) => {
console.log("错误信息")
console.log(err)
},
complete: (res) => {
console.log("都要执行")
}
});
}
定位功能代码
this.socketTask = uni.connectSocket({
url: this.wsUrl + '/webSocket/' + userInfo.id, //仅为示例,并非真实接口地址。
success: (resData) => {
console.log("链接成功")
console.log(resData)
},
fail: (err) => {
console.log("错误信息")
console.log(err)
},
complete: (res) => {
console.log("都要执行")
}
});
这个定位功能的可以打印链接成功,但是随后又报连接失败
聊天如下
1.检查控件是否已经安装
如果没有安装,请下载安装:http://www.ncmem.com/webapp/wordpaster/pack.aspx
2.检查授权码是否填写完整。
3.检查端口是否被其它软件占用:
http://www.ncmem.com/doc/view.aspx?id=684290f67b3b46fcbb5fa5d6388a4bc3
4.重新安装控件。
windows系统可能进程假死,控件已经启动,但是无法连接。建议您重新安装控件。
5.一般在edge和chrome内核中由于控件启动失败导致无法连接服务。
解决方法:
重新安装最新的控件。安装时注意360等安全软件是否拦截。安装前关闭所有浏览器。
6.在chrome中禁止了控件启动
解决方法: