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");
}
}
版权声明:《 vue 前端授权获取微信openId,非静默式 》为漠北星火原创文章,转载请注明出处!
最后编辑:2020-2-15 08:02:43
请登录后发表评论