PHP小程序登录获取用户openid以及用户手机号

本文介绍了如何使用PHP在小程序中实现用户登录获取openid和手机号。客户端通过调用wx.login()获取code,并将code、iv、encryptedData发送到服务端。PHP服务端利用code向微信服务器换取openid和session_key,再进行解密操作,获取用户手机号。解密过程需引用微信提供的解密算法文件。
摘要由CSDN通过智能技术生成
  1. (客户端)调用接口wx.login()获取登录凭证(code)。
	wx.login({
   
	  success (res) {
   
	    if (res.code) {
   
	      //发起网络请求
	      wx.request({
   
	        url: 'https://test.com/onLogin',
	        data: {
   
	          code: res.code
	        }
	      })
	    } else {
   
	      console.log('登录失败!' + res.errMsg)
	    }
	  }
	})
  1. 因为需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 button 组件的点击来触发。
	<button open-type="getPhoneNumber" 	bindgetphonenumber="getPhoneNumber"></button>

		Page({
   
		  getPhoneNumber (e) {
   
		    console.log(e.detail.errMsg)
		    console.log(e.detail.iv)
		    console.log(e.detail.encryptedData)
		  }
		})
  1. (客户端)将获取的code,iv,encryptedData参数发送到服务端.
  2. (服务端 php)服务器发送code到微信服务器获取openid(用户唯一标识)和session_key(会话密钥),最后将encryptedData、iv、session_key通过解密获取到用户手机号
    解密需要 引用的文件官网可以下载
    https://developers.weixi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值