概述
本文主要和大家分享微信小程序如何获取用户的openid,微信小程序中获取用户的openid的方式有两种,希望能帮助到大家。
方法一:
先获取用户信息(wx.getUserInfo),然后将返回的用户信息中包含openid的敏感信息解密得到用户的openid一种是先获取用户信息,然后将返回的用户信息中包含openid的敏感信息解密得到用户的openid,这种方法获取用户openid比较麻烦,还涉及到数据解密,而且如果用户拒绝授权,则获取不到。这里不细说此方法,详见文档。
方法二:
先登录(wx.login)获取用户登录凭证(code),然后拿这个code当参数调用接口,通过后端获取到用户的openid。
小程序端代码如下:
//app.js
App({
onLaunch: function() {
wx.login({
success: function(res) {
if (res.code) {
//发起网络请求
wx.request({
url: 'https://test.com/onLogin',
data: {
code: res.code
}
})
} else {
console.log('获取用户登录态失败!' + res.errMsg)
}
}
});
}
})
登录后复制
后端获取数据方法如下:
//获取用户openid
function getopenid(){
$js_code = I('post.code');
if(empty($js_code)) return array('status'=>0,'info'=>'缺少js_code');
$appid = 'xxxxxxxxxxxxx';
$appsecret = 'xxxxxxxxxxxxxxxxxxxxxx';
$curl = 'https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code';
$curl = sprintf($curl,$appid,$appsecret,$js_code);
$result = request($curl);
return array('status'=>1,'info'=>json_decode($result,true));
}
登录后复制
数据返回说明
//正常返回的JSON数据包
{
"openid": "OPENID",
"session_key": "SESSIONKEY",
"unionid": "UNIONID"
}
//错误时返回JSON数据包(示例为Code无效)
{
"errcode": 40029,
"errmsg": "invalid code"
}
登录后复制
相关推荐:
微信如何获取openid
微信小程序获取openid及用户信息的方法
微信公众号开发网页中及时获取当前用户Openid及注意事项
以上就是微信小程序如何获取用户的openid的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是丰富奇异果为你收集整理的微信小程序如何获取用户的openid的全部内容,希望文章能够帮你解决微信小程序如何获取用户的openid所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复