Vue公众号配置微信授权(路由采用history模式)

created() {
let vm = this;
/**如果扫码进入,后端会在地址传openid;
* */
if (this.$route.query.openid !== "" || Cookies.get('SESSION')) {
return
}
let code=this.getUrlKey("code");
if (!code) {
this.getCodeApi("123");
} else {
  /*调取接口查看是否登录*/
userLogin({code:code}).then((res) => {
window.localStorage.setItem("loginState", '1');
}).catch((err)=> {
/*说明没登录*/
window.localStorage.setItem("loginState", '0');
vm.$_toast(err.message)
})
}

}
getUrlKey(name){// 获取url 参数
return decodeURIComponent((new RegExp('[?|&]'+name+'='+'([^&;]+?)(&|#|;|$)').exec(location.href)||[,""])[1].replace(/\+/g,'%20'))||null;
}
getCodeApi(state){// 获取code
let urlNow=window.location.href;
let scope='snsapi_base'; // snsapi_userinfo //静默授权 用户无感知
let appid=appId;
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);
}
posted @   这是啥!啥!啥  阅读(3082)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示