微信登录功能模块的坑

本文介绍了在微信小程序中实现登录功能所遇到的问题,包括微信更新后不能使用wx.getUserInfo(),需要改用组件方式请求用户授权。前端代码需要注意不校验合法域名的设置,后端使用PHP的CURL功能向微信服务器发送请求。调试过程中的耐心和细致是解决问题的关键。
摘要由CSDN通过智能技术生成

学习微信小程序登录模块所踩过的坑

用户登录是小程序中获取用户加密信息、使用模板消息、客服消息、微信支付等接口的先决条件。微信小程序登录是为了让开发者的服务器获取用户的openId以及session_key的令牌。

在微信小程序早期,我们是先通过调用wx.login(),成功后再调用wx.getUserInfo()获取用户的信息。而微信在今年9月初却发布一个公告,声称平台将回收“使用 wx.getUserInfo 接口直接弹出授权框”的能力,开发者需要使用组件方式唤起登录授权弹窗。因此我们将不能再使用wx.getUserInfo这个api接口了。

如今,如果你只想获取用户的明文信息,可使用 open-data (小程序)或者开放数据域(小游戏)的方式展示用户信息(无需用户授权);如果需要获取加密信息用于后续微信支付,模板消息等功能,则需使用button(小程序)或UserInfoButton(小游戏)组件,用户点击后弹窗请求用户授权。

前端代码如下:

Page({

  /**
   * 页面的初始数据
   */
  data: {

  },
  onReady: function() {
    var that = this;
    wx.login({
      success: function(loginRes) {
        that.setData({
          code: loginRes.code
        })
      }
    })
  },

  onGotUserInfo(userRes) {
    var that = this;
    wx.request({
      url: 'http:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值