一、前言
在微信小程序中,通過授權登錄可以獲取用戶的基本信息,但是由于小程序獲取用戶信息的流程比較復雜,也有很多步驟,所以本文將一步步的介紹如何在php開發的環境下獲取小程序授權用戶的信息。
二、準備工作
1、安裝微信小程序開發工具,申請一個小程序,并記住小程序的AppID和AppSecret,這些都是后面需要用到的參數;
2、安裝PHP開發環境,并設置好環境變量;
3、安裝微信SDK,SDK的地址為:
https://github.com/dodgepudding/wechat-php-sdk
三、步驟
1、登錄小程序后臺,點擊左側菜單“設置”,然后點擊“開發設置”,在彈出的頁面中,找到“服務器域名”,然后設置你要接收小程序用戶信息的域名,比如:www.example.com。
2、在PHP開發環境中,創建一個新的文件,名字叫login.php,然后復制下面這段代碼到文件中:
<?php
require_once 'wechat-php-sdk/autoload.php';
// 使用長整型,防止有的系統把ID轉換成浮點數
$appId = 'wx1234567890abcdef';
$appSecret = '1234567890abcdefghijklmnopqrstuv';
$wechat = new WechatWechat(array('appId' => $appId, 'appSecret' => $appSecret));
// 獲取code
$code = $_GET['code'];
// 使用code換取用戶信息
$data = $wechat->getOauthAccessToken($code);
// 獲取access_token
$access_token = $data['access_token'];
// 使用access_token獲取用戶信息
$userInfo = $wechat->getOauthUserinfo($access_token,$data['openid']);
// 打印用戶信息
print_r($userInfo);
?>
然后,將上面代碼中的$appId和$appSecret替換成你記住的小程序AppID和AppSecret,完成后,保存文件。
3、在小程序中,創建一個新的頁面,用于授權登錄,然后在頁面的js文件中添加以下代碼:
// 這里填寫你的接收用戶信息的域名
var domain = 'www.example.com';
// 獲取用戶信息
wx.getUserInfo({
success: function (res) {
var userInfo = res.userInfo;
// 將用戶信息發送給服務器
wx.request({
url: 'https://' + domain + '/login.php',
data: {
code: res.code,
userInfo: userInfo
},
success: function (res) {
// 接收服務器返回的用戶信息
console.log(res.data);
}
});
}
});
然后,將上面代碼中的domain替換成你設置的域名,完成后,保存文件。
4、在小程序中,在用戶點擊授權登錄按鈕之后,就會發起一個請求,請求發往你設置的域名,在login.php中,會接收到這個請求,然后就可以獲取用戶的信息了,比如頭像、昵稱等。
以上就是本文關于php開發之微信小程序授權用戶信息的教程的全部內容,希望對大家有所幫助!