jssd:wx.scanQRCodeIphone手机中无法调用在Android手机中获取不到返回值?
发布于 6 年前 作者 mingshen 8163 次浏览 来自 问答

使用vue开发,相同的代码debugger为true的模式下,IPhone和Android都无法正常使用。

问题描述:

  1. 在iPhone中,提示:{“errMsg”:“config:invalid signature”}
  2. 在Android中,提示有读取到二维码内容,但没有返回结果内容

环境说明:

Android微信版本号:8.0.2,IPhone微信版本号:8.0.2

使用的jssdk :“weixin-jsapi”: “^1.1.0”

代码片段说明及截图说明:

          wx.config({
            debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
            //                                debug : true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
            appId: appId, // 必填,公众号的唯一标识
            timestamp: timestamp, // 必填,生成签名的时间戳
            nonceStr: noncestr, // 必填,生成签名的随机串
            signature: signature, // 必填,签名,见附录1
            jsApiList: ["scanQRCode"] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
          }); 
          wx.ready(function() {
            wx.scanQRCode({
              needResult: 1, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果,
              scanType: ["qrCode", "barCode"], // 可以指定扫二维码还是一维码,默认二者都有
              success: function(res) {
                  alert('扫码成功')
                  this.scanQRCodeRes=res
                  alert('扫码成功的返回结果:',res)
                var resultStr = JSON.parse(res.resultStr) // 当needResult 为 1 时,扫码返回的结果 
                alert(resultStr) 
              },
              error: function(res) {
                  this.scanQRCodeResError=res
                console.log(res);
              }
            });
          });

IPhone手机截图:

Android手机扫码后截图第二张图应该返回的是和第一章图中的结果一样,实际却为空,没有任何内容:

代码片段截图说明:

回到顶部