收藏
回答

小程序MQTT真机测试什么都没问题,发到线上为体验版时连接不上?

小程序使用mqtt时,在开发者工具,真机测试,预览时都能够正常的连接订阅主题,也能收到消息,但是发到线上,体验版的话就不行了,就一直连接不上,这是什么操作?

最后一次编辑于  09-12
回答关注问题邀请回答
收藏

1 个回答

  • 吴迪
    吴迪
    09-12

    wss?

    09-12
    赞同 1
    回复 12
    • 🌹我是冯征🌹
      🌹我是冯征🌹
      09-12
      后台配置的是wss:// 代码请求是wxs:// 但是用代码写wss:// 报错ws不是一个构造函数
      09-12
      回复
    • 吴迪
      吴迪
      09-12回复🌹我是冯征🌹
      调用必须是wss才行,就像接口必须是https
      09-12
      回复
    • 🌹我是冯征🌹
      🌹我是冯征🌹
      09-12回复吴迪
      那报错ws不是一个构造函数,怎么解决呀
      09-12
      回复
    • 吴迪
      吴迪
      09-12回复🌹我是冯征🌹
      发你的代码看看呢
      09-12
      回复
    • 🌹我是冯征🌹
      🌹我是冯征🌹
      09-12
      let client = connect('wxs://xxxx:8084/mqtt', {
           clientId: 'wss_'+num,
           username: "",
           password: ""
         })
         wx.showToast({
           title: client.connackTimer.toString()
         })
         console.log(client)
         try {
       
         client.on('connect', (e) => {
           console.log(e)
           console.log('mqtt连接成功')
           wx.showToast({
             title: 'mqtt连接成功'
           })
           var productCode = this.data.productCode
           var productSecretKey = this.data.productSecretKey
           console.log(productCode, "'.......code'", productSecretKey, "'......key'")
           var str = 'NDFLift/POST/' + productCode + '/' + productSecretKey + '/CmdBack'
           console.log(str)
           client.subscribe(str)
         })
         
         
         }catch(error){
           wx.request({
             url: app.globalData.apiurl + 'api/Log/CreateRecord',
             data:{
               "param": error,
             },
             method: 'POST',
             header: { 'content-Type': 'application/json' },
             success: function (res) {
               console.log(res)
               }
           })
         console.log(error)
         wx.showModal({
           title:error
         })
         }
         client.on('error', error => {
           console.log(error)
           wx.showModal({
             title:error
           })
         })
         client.on('message', (topic, message) => {     // message is Buffer
           console.log('收到消息:' + message.toString())
           var obj1 = JSON.parse(message)
           console.log(obj1)
           var newObj = obj1.CmdResult
           that.setData({
             newObj1: newObj
           })
           console.log(newObj)
           var IsLiftingObj = newObj.IsLifting
           var IsSuccessObj = newObj.IsSuccess
           var LiftingDirectionObj = newObj.LiftingDirection
          
         
          
           }
         })
       },


      09-12
      回复
    查看更多(7)
问题标签