获取用户的openid与遇到的"errcode":40029与"errcode":40125,"errmsg"
Posted 春风又一季
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取用户的openid与遇到的"errcode":40029与"errcode":40125,"errmsg"相关的知识,希望对你有一定的参考价值。
WXML文件
<button bindtap='getOpenIdTap'>获取用户唯一标识openid</button>
openid:openidsession_key:session_key
JS文件
const APP_ID ='';//输入小程序appid
const APP_SECRET ='';//输入小程序app_secret
var OPEN_ID=''//储存获取到openid
var SESSION_KEY=''//储存获取到session_key
Page(
getOpenIdTap:function()
var that=this;
wx.login(
success:function(res)
wx.request(
//获取openid接口
url: 'https://api.weixin.qq.com/sns/jscode2session',
data:
appid:APP_ID,
secret:APP_SECRET,
js_code:res.code,
grant_type:'authorization_code'
,
method:'GET',
success:function(res)
console.log(res.data)
OPEN_ID = res.data.openid;//获取到的openid
SESSION_KEY = res.data.session_key;//获取到session_key
console.log(OPEN_ID.length)
console.log(SESSION_KEY.length)
that.setData(
openid: res.data.openid.substr(0, 10) + '********' + res.data.openid.substr(res.data.openid.length - 8, res.data.openid.length),
session_key: res.data.session_key.substr(0, 8) + '********' + res.data.session_key.substr(res.data.session_key.length - 6, res.data.session_key.length)
)
)
)
)
一开始可能会遇到
"errcode":40125,"errmsg":"invalid appsecret, view more at http:\\/\\/t.cn\\/LOEdzVq, hints: [ req_id: kL8J90219sg58 ]"
解决方法
这个问题与小程序的secret有关这样就要登录用的开发者平台,将AppSecret重置 ps(这里面的AppID后面重新导入项目时要用到)
这样下来本以为会好了结果并没有出现了40029的错误 参考博客https://blog.csdn.net/u011415782/article/details/80546529
"errcode":40029,"errmsg":"invalid code, hints: [ req_id: m3yw8a0472th20 ]"
解决方法
在网上搜了下,有两种说法:
1、code被使用了两次;
2、appid与secret不一致
看了一下自己的项目,这两个错误都不是,后来在另一篇博文里看到只需要重新创建项目就可以了,试了一下,还真是。
这里我先把以前的项目删除重新导入,然后在每次导入的都会有一个AppID,以前我一直在用测试号,
现在重新导入修改Appid为后台微信公众号提供的AppID然后就运行成功了
以上是关于获取用户的openid与遇到的"errcode":40029与"errcode":40125,"errmsg"的主要内容,如果未能解决你的问题,请参考以下文章