vue 前端授权获取微信openId,非静默式

 getUrlKey:function(name){//获取url 参数
   return decodeURIComponent((new RegExp('[?|&]'+name+'='+'([^&;]+?)(&|#|;|$)').exec(location.href)||[,""])[1].replace(/\+/g,'%20'))||null;
  }

function getCodeApi(state){//获取code   
     let urlNow=encodeURIComponent(window.location.href);
     let scope='snsapi_base';    //snsapi_userinfo   //静默授权 用户无感知
     let appid='wx4cc5d5c123123123';
     let url=`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appid}&redirect_uri=${urlNow}&response_type=code&scope=${scope}&state=${state}#wechat_redirect`;
     window.location.replace(url);
}

created(){
                  let code=getUrlKey("code");
                   if(code){
                          //调用接口获取openId   参考文档https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
                        getOpenIdApi(code).then(res=>{
                                let openId=res.openId;
                                window.location.replace("/#/login");
                        }).catch(res=>{
                              window.location.replace("/#/login");
                        })
                   }else{
                            getCodeApi("123");
                   }
}
发表评论 / Comment

用心评论~