在官方文档中获取微信小程序openid的操作方法如下:
主要是利用wx.login()和wx.request()函数,代码如下:
onLaunch: function() {
wx.login({
success: function (res) {
if (res.code) {
//发起网络请求
wx.request({
url: 'https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code',success:function(response){
console.log('openid:' + response.data.openid);
},})
} else {
console.log('获取用户登录态失败!' + res.errMsg)
}
}
});
},
url中的appid secret js_code 要根据实际情况写
遇到的问题:编译程序时候提示错误为: 不在以下合法域名列表中,请参考文档
对于该错误提示,官方解释如下:
解决方法:将wx.request()方法中的url改成后台编写的程序.php:
url: 'http://www.encryption.pqfitness.com/trunk/api/user/login.php?code=222',
但是编译程序出现下面错误:
即提示协议错误。
错误原因: 微信小程序只支持https的接口 ,不支持http的接口
解决方法,将协议改成https。