获取用户的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"的主要内容,如果未能解决你的问题,请参考以下文章

使用 OpenID 连接的节点快递

微信小程序 获取用户openid并给webview传值

微信小程序,weixin,怎么获取用户的Openid

C# 微信开发 怎么批量获取用户信息?

微信公众号用户与网站用户的绑定-自定义菜单获取Openid

微信公众号开发纪要-获取用户openid