介绍
如何在微信小程序中获取openid ?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
<强> 1。获取openid 强>
<强> 1.1获取代码强> <强>
强>
调用接口获取登录凭证(代码)进而换取用户登录态信息,包括用户的唯一标识(openid)及本次登录的会话密钥(session_key)。用户数据的加解密通讯需要依赖会话密钥完成。
wx.login ({ ,//获取代码 ,成功:函数(res), { ,,code =, res.code //返回代码 ,} })
<强> 1.2获取openid
强>
拿到上一步获取的代码,结合小程序appid和秘密请求接口https://api.weixin.qq.com/sns/jscode2session?appid=APPID&秘密=SECRET& js_code=JSCODE& grant_type=authorization_code换取openid,与openid一同被返回的,还包括session_key,其中session_key是对用户数据进行加密签名的密钥。为了自身应用安全,session_key不应该在网络上传输。
wx.request ({ ,url: & # 39; https://api.weixin.qq.com/sns/jscode2session?appid=APPID&秘密=SECRET& js_code=& # 39; +, code + & # 39;, grant_type=authorization_code& # 39; ,数据:{}, ,头:{ ,,& # 39;内容类型# 39;:,& # 39;application/json # 39; }, ,成功:函数(res), { 时间=openid 才能;res.data.openid //返回openid ,} })
<强> 2。获取用户信息
强>
<强> 2.1在应用。js中创建该全局方法
强>
//app.js getUserInfo:函数(cb) { ,var that =, ,如果(this.globalData.personInfo) { typeof 才能;cb ==,“function",,,, cb (this.globalData.personInfo) ,其他}{//调才能用登录接口 wx.login({才能 ,,,成功:function (), { ,,,wx.getUserInfo ({ ,,,,成功:,function (res), { ,,,,,that.globalData.personInfo =res.userInfo ,,,,,typeof cb ==,“function",,,, cb (that.globalData.personInfo) ,,,,} ,,,}) ,,} })才能 ,} }
<强> 2.2实例化全局方法获取用户信息
强>
var that =,;//调用应用实例的方法获取全局数据 app.getUserInfo (function (personInfo), { ,//更新数据 ,that.setData ({ personInfo才能:personInfo ,}) })
看完上述内容,你们掌握如何在微信小程序中获取openid的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!