uni.login({
provider:"weixin",
onlyAuthorize:true,
success(loginRes) {
console.log("wxlogin",loginRes);
let reqparam={
code : loginRes.code,
channel:that.$runplatform
}
},
fail(e) {
uni.showToast({
title:"失败"+e.errMsg
});
console.log("登录失败");
console.log(e);
}
});
- 发布:2021-09-08 15:11
- 更新:2021-12-11 17:42
- 阅读:3462
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10企业版
HBuilderX类型: 正式
HBuilderX版本号: 3.2.3
手机系统: Android
手机系统版本号: Android 9.0
手机厂商: 小米
手机机型: note8
页面类型: vue
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
在app 中调用微信授权登录 uni.login。设置参数为 onlyAuthorize:true
即可复现。返回值没有code还是 只有 authResult
在app 中调用微信授权登录 uni.login。设置参数为 onlyAuthorize:true
即可复现。返回值没有code还是 只有 authResult
预期结果:
返回 code.由服务端来换取openid和unionid
返回 code.由服务端来换取openid和unionid
实际结果:
{
"authResult": {
"access_token": "48_v15-uMrU23CufomJX8BFsWNUz8yidvtA2S7-5-sDQcDEv8mfe6bGvjmWQNbwxWJNrKzN_2IcCMkOwt8o5HxT-mp-5iMsRguWVcbcEGjesYI",
"expires_in": 7200,
"refresh_token": "48_WVKEFnzl2aNclCn0gXyRV-JbJIA29JQobmU8tAq3i9ubFELmwYdt3BMiyTHLnvHS1RantZSxd0CgsAIXo7GkZ_YG2WphuVhkZeloPkFTNzs",
"openid": "oRrdQt1j9yAfQtgY4gDFJHLzxdsU",
"scope": "snsapi_userinfo",
"unionid": "oU5Yyt2blg4mHvRe8dJoz974RkAk"
},
"errMsg": "login:ok"
}
{
"authResult": {
"access_token": "48_v15-uMrU23CufomJX8BFsWNUz8yidvtA2S7-5-sDQcDEv8mfe6bGvjmWQNbwxWJNrKzN_2IcCMkOwt8o5HxT-mp-5iMsRguWVcbcEGjesYI",
"expires_in": 7200,
"refresh_token": "48_WVKEFnzl2aNclCn0gXyRV-JbJIA29JQobmU8tAq3i9ubFELmwYdt3BMiyTHLnvHS1RantZSxd0CgsAIXo7GkZ_YG2WphuVhkZeloPkFTNzs",
"openid": "oRrdQt1j9yAfQtgY4gDFJHLzxdsU",
"scope": "snsapi_userinfo",
"unionid": "oU5Yyt2blg4mHvRe8dJoz974RkAk"
},
"errMsg": "login:ok"
}
bug描述:
uni.login中的onlyAuthorize 参数 设置无效。
问题复现步骤:
在app中用微信登录。
uni.login({
provider:"weixin",
onlyAuthorize:true,
success(loginRes) {
}
});
此时loginres返回的依然是authresult没有code
+1,
希望官方能把该死的 appsecret 改成选填的,开启 onlyAuthorize 只拿 code 不应该填 appsecret
{
"code": -7,
"message": "业务参数配置缺失,http://ask.dcloud.net.cn/article/282"
}
我也遇到同样问题:
后面发现onlyAuthorize参数是要求版本 3.2.3 +,目前使用的最新版本是 3.2.3,于是下载3.2.6.20210901-alpha版本Hbuildx,重新打包自定义基座, 成功返回了code