mpvue 微信小程序 获取用户授权 getUserInfo、获取用户绑定手机号 getphonenumber

获取用户授权 wx.getUserInfo

在我们正常编写微信小程序时,可以直接使用微信文档中的wx.getUserInfo下给的例子来获取用户的授权信息。
wxml:

<button open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">授权登录</button>

js:

bindGetUserInfo(e) {
	console.log(e.detail.userInfo)
}

但是在mpvue中,不支持bind写法,要把bindgetuserinfo 改成 @getuserinfo

bindgetuserinfo="bindGetUserInfo"改成@getuserinfo=“bindGetUserInfo”

即:

<button open-type="getUserInfo" @getuserinfo="bindGetUserInfo">授权登录</button>

JS事件不变放在methods里即可调用用户授权窗口。

获取微信绑定的手机号 getphonenumber

在我们正常编写微信小程序时,可以直接使用微信文档中的"获取手机号"下给的例子来获取用户手机号。
wxml:

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>

js:

Page({
  getPhoneNumber(e) {
    console.log(e.detail.errMsg)
    console.log(e.detail.iv)
    console.log(e.detail.encryptedData)
  }
})

但是上面我也提到了,mpvue中是不支持bind写法的。同样要把bindgetphonenumber 改成 @getphonenumber

bindgetphonenumber="getPhoneNumber"改成@getphonenumber=“getPhoneNumber”

<button open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">获取微信手机号</button>

但是,我们JS中的函数也是需要更改的,使用e.detail.errMsg / e.detail.iv / e.detail.encryptedData是无法获取到信息的。
大家可以试着把这些注释掉,在函数中直接console.log(e),看下控制台中的信息。
getphonenumber方法控制台上输出的参数
这里相比原生微信小程序中,detail外层多了个mp。
所以我们要更改下函数的输出路径

Page({
  getPhoneNumber(e) {
    console.log(e.mp.detail.errMsg)
    console.log(e.mp.detail.iv)
    console.log(e.mp.detail.encryptedData)
  }
})

这样就能获取到参数了。需要注意的是,此时返回的数据是加密的,需要服务器端的支持才可以解开变为我们正常的手机号数据

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
要在PHP中实现微信小程序授权获取用户信息并手机号登录,可以按照以下步骤进行操作: 1. 在微信小程序端,通过`wx.login`获取用户的临时登录凭证`code`。 2. 将获取到的`code`发送到服务器端,使用`https`接口调用`code2Session`接口,获取到`openid`和`session_key`。 3. 将`openid`和`session_key`保存至服务器端数据库或缓存中。 4. 在小程序端,使用`wx.getUserInfo`获取用户信息,包括`nickName`、`avatarUrl`等,并将用户信息传输到服务器端。 5. 在服务器端,接收到用户信息后,将用户信息保存到服务器数据库中,可以使用`openid`作为用户的唯一标识。 6. 在小程序端,点击手机号的按钮,调用`wx.request`向服务器发送请求,请求获取手机号的能力。 7. 在服务器端,接收到手机号请求后,可以返回一个包含手机获取能力的`code`给小程序端。 8. 小程序端收到`code`后,调用`wx.request`向服务器发送请求,请求获取手机号。 9. 服务器端接收到获取手机号的请求后,可以通过调用微信开放平台提供的解密能力,解密包含手机号的数据,并将解密得到的手机号与用户信息进行。 10. 成功后,返回相应的状态给小程序端。 总结:通过以上步骤,我们可以在PHP中实现微信小程序授权获取用户信息并手机号登录的功能。在小程序端,用户使用微信授权登录后,将用户信息传输到服务器端保存,并通过手机号使用户能够更便捷地登录和使用小程序。同时,在服务器端需要进行数据加密和解密的操作,确保用户的信息安全。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值