赞
踩
小程序端获取到code码之后发送请求到后端并携带code码,使用auth.getAccessToken发起GET请求获取到ACCESS_TOKEN,继续使用phonenumber.getPhoneNumber获取到用户手机号。
wxml添加按钮
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">获取手机号</button>
js添加函数
Page({ getPhoneNumber (e) { wx.request({ url: 'url', method:'POST', data:{ code:e.detail.code, }, success(res){ console.log(res); } }) } })
后台获取到code进行处理
函数解释:
file_get_contents:发起请求来处理
json_decode:json格式转换为数组
stream_context_create:改变发送请求的方式为post
json_encode:数组转换为json格式
以上为在本例起到的作用
public function login(Request $request){
$APPID = env('APPID');
$APPSECRET = env('APPSECRET');
$ACCESS_TOKEN = json_decode(file_get_contents("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$APPID&secret=$APPSECRET"),true)['access_token'];
$url = "https://api.weixin.qq.com/wxa/business/getuserphonenumber?access_token=$ACCESS_TOKEN";
$content = stream_context_create(['http'=>['method' => 'POST' , 'header' => 'Content-type: application/json','content'=>json_encode(['code' => $request->code])]]);
$response = json_decode(file_get_contents($url , false , $content),true);
return $response['phone_info']['phoneNumber'];
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。