admin管理员组文章数量:1530361
用法同微信公众号网页一样,直接看文档
构造网页授权链接 - 接口文档 - 企业微信开发者中心
关于调试:没有开发工具,直接下载应用,在应用内打开调试的
客户端网页调试工具 - 接口文档 - 企业微信开发者中心
建议: 因为只能线上测试 ,建议多打印方便找问题,不要怕麻烦,否则发布一版改一点更麻烦
注意: 1. 回调地址404,查询其他链接是否带#,回调redirect_uri要一致
2. 其他404: uniapp打包H5空白页面或者刷新404问题_lianzhang861的博客-CSDN博客
1. 获取code 核心代码块
getCode() {
const code = uni.getStorageSync('code');
if (code) {
console.log("授权成功 开始登录",code)
this.loginWxBtn(code)
uni.removeStorageSync('qywxUrl');
uni.removeStorageSync('code');
} else {
let REDIRECT_URI = urlencode(window.location.protocol + '//' + window.location.hostname +'/pages/index/login');
let link = window.location.href;
uni.setStorageSync('qywxUrl',link);
// redirect_uri 授权后重定向的回调链接地址获取code,使用urlencode对链接进行处理
// link 获取code后重定向的授权之前的页面
window.location.replace(
`https://open.weixin.qq/connect/oauth2/authorize?appid=appid&redirect_uri=${REDIRECT_URI}&response_type=code&scope=snsapi_userinfo&state=1&connect_redirect=1#wechat_redirect`
);
}
}
2. 回调页面接收回调code参数
// 地址带# 可能获取不到参数 建议采用方法二
// 方法一: 直接获取
onLoad(options) {
// #ifdef H5
if(this.app.isWeiXin){
let link = uni.getStorageSync('qywxUrl');
if (link) {
uni.setStorageSync('code', options.code);
window.location.replace(link)
}
}
// #endif
},// 方法二
onLoad() {
// #ifdef H5
if(this.app.isWeiXin){
let link = uni.getStorageSync('qywxUrl');
if (link) {
let code = this.getUrlParam('code');
uni.setStorageSync('code', code);
window.location.replace(link)
}
}
// #endif
},//获取地址栏url后的参数值
function getUrlParam(key) {
var href = window.location.href;
var url = href.split("?");
if(url.length <= 1){
return "";
}
var params = url[1].split("&");
for(var i=0; i<params.length; i++){
var param = params[i].split("=");
if(key == param[0]){
return param[1];
}
}
}
版权声明:本文标题:uniapp企业微信第三方网页授权登录获取code 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1726184160a1059333.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论