原生小程序使用二维码扫码调用接口

 1、点击扫码直接打开文件,通过二维码得到了个后台反的url地址(https://....?参数=值&参数=值),把地址的参数拿取出来,之后调用接口就完成了,如果是和我一样操作的,建议复制。

//按钮样式跳转扫码
<button class="btn-bottom" bindtap="saomasuy">扫码</button></view>

//根据扫码内容调用接口,传输数据,跳转传参
saomasuy() {
    var e = this;
    wx.scanCode({ //允许从相机与相册扫码,调起客户端扫码界面进行扫码
      success: function (a) {
        console.log(a, '扫码结果');
        // scanType	string	所扫码的类型
        if (a.scanType == 'WX_CODE') {
          var t = a.path.split("="); //当所扫的码为当前小程序二维码时,会返回此字段,内容为二维码携带的 path
        }
        if (a.scanType == 'QR_CODE') {
          // 获取url地址的参数,结果是对象形式
          let str = a.result.substr(a.result.indexOf("?") + 1) + "&";
          let strs = str.split("&");
          let theRequest={}
          for (let i = 0; i < strs.length - 1; i++)
				 {
						 let key = strs[i].substring(0, strs[i].indexOf("="));
						 let val = strs[i].substring(strs[i].indexOf("=") + 1);
						 theRequest[key] = val;
         }
         var device_sn=theRequest.device_sn;
         var cate=theRequest.cate
          console.log(device_sn,cate,'截取成哥数据');
          wx.request({
            url: '扫码完成后调用的后端接口数据',
//后端需要的参数
            data: {
              device_sn:device_sn,
              cate:cate
            },
            header: {
              'content-type': 'application/x-www-form-urlencoded', //查询字符串
            },
            method: 'POST',
            success(res) {
              console.log(res, '结果,可以判断状态码之后进行操作');
      
            }
          })
        }
        wx.showLoading({
          title: "正在查询..."
        });
      }
    });
  },

希望对你有所帮助~~

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值