微信小程序> 微信小程序获取openid,unionid

微信小程序获取openid,unionid

浏览量:851 时间: 来源:萝卜儿
  • 注意openid并不能作为小程序用户的唯一标识,不同用户有可能相同,unionid才是唯一标识,这个参数我们需要后台去微信绑定小程序后才有。(通过 https://api.weixin.qq.com/sns/jscode2session?  接口返回的参数获得)

方法一(前端获取)

注意:虽然前端能拿到openid,但是发布上线的时候会无法过审,因为出于安全考虑,前端代码不允许暴露小程序appId和app secret(秘钥),所以此种方法不可取。

1、登录凭证校验,通过 wx.login() 接口获得临时登录凭证 code 后传到开发者服务器调用此接口完成登录流程。更多使用方法详见 小程序登录。
小程序
2、接着访问 https://api.weixin.qq.com/sns/jscode2session?

wx.login({    success: function (res) {        console.log(res)         if (res.code) {            console.log('通过login接口的code换取openid');             wx.request({               url: 'https://api.weixin.qq.com/sns/jscode2session',               data: {                  //填上自己的小程序唯一标识                 appid: '',                  //填上自己的小程序的 app secret                 secret: '',                 grant_type: 'authorization_code',                 js_code: res.code               },               method: 'GET',               header: { 'content-type': 'application/json'},               success: function(openIdRes){                    console.info("登录成功返回的openId:" + openIdRes.data.openid);               },               fail: function(error) {                   console.info("获取用户openId失败");                   console.info(error);               }            })          }        }    })

方法二(后端获取)

前面我们说过前端获取openid的方法,项目上线是无法过审的。现在我们把小程序id和app secret给后台,让后台去请求,然后将返回值通过接口返回给我们,就可以了。另外,我们通过后台接口返回的参数unionid作为用户唯一标识

        wx.login({            success: function (res) {              console.log(res)              wx.request({                url: '后台通过获取前端传的code返回openid的接口地址',                data: { code: code },                method: 'POST',                header: { 'content-type': 'application/json'},                success: function (res) {                 if (res.statusCode == 200) {                   console.log(res.data.result.openid);                   console.log(res.data.result.unionid);                 } else {                   console.log(res.errMsg)                 }              },            })          }       })  

小程序
这样,我们就大功告成!!!

微信小程序

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

最新资讯

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎