• 调用微信扫一扫接口扫描二维码


    对于这个方法我只能说我是在最开始的时候测试过,但是后面就没有测试过了, 由于项目不仅要放在微信里,也要放在app里,所以多了一步判断,
    如果在微信,则调用微信的扫一扫,如果在app里则调用某个方法,这个方法是后台写好的

    首先引入微信的js文件
    <script src="jquery-2.1.1.min.js"></script>
    <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
     
    function isWeiXin(){
        var ua = window.navigator.userAgent.toLowerCase();
        if(ua.match(/MicroMessenger/i) == 'micromessenger'){
          return true;
        }
        else{
          return false;
        }
      }
    <%--扫描二维码--%>
    //点击事件调起微信扫一扫接口
    $('.contentimg .saomiao').click(function(){  //判断当前页面是否在微信中打开
      if(isWeiXin()){
        //通过config接口注入权限验证配置  
        $.ajax({
          type:"post",  
          url:"",  //自己填写请求地址  
          data:{},  
          success:function(result){  
            wx.config({  
              // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,
              仅在pc端时才会打印。  

              debug: false,  
              // 必填,公众号的唯一标识  
              appId: result.appId,  
              // 必填,生成签名的时间戳  
              timestamp:""+result.timestamp,  
              // 必填,生成签名的随机串  
              nonceStr:result.noncestr,  
              // 必填,签名    
              signature:result.signature,  
              // 必填,需要使用的JS接口列表    
              jsApiList : [ 'checkJsApi', 'scanQRCode' ]  
            });  
          }  
        })
      

        <%--//通过ready接口处理成功验证--%>
        wx.ready(function(){

          /*config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,
          config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中
          调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。*/
        });
        //通过error接口处理失败验证
        wx.error(function(res){

          /*config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开
          config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。*/

        });

        wx.scanQRCode({  
          needResult: 0, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果,  
          scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有  
          success: function (res) {  
            var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果  
          }  
        });
      }
      else{
        A2J.scan("show_result");
      }
    }



  • 相关阅读:
    前端知识之BOM和DOM
    jQuery基础
    前端知识之JavaScript知识
    前端知识之css样式
    前端知识之html基础
    pymsql模块
    数据库、表、表内容增删改查
    数据库
    python正则表达式
    python列表生成式
  • 原文地址:https://www.cnblogs.com/qiruoranbeginner/p/7545214.html
Copyright © 2020-2023  润新知