1. 認証コールバック ページのドメイン名を設定します (例: www.aaa.com
)。2. 公式アカウントのサードパーティ Web ページ、fn_system.php
Php コードをシミュレートします
-
-
- if(空空($_SESSION[ 「ユーザー」])) {
-
- ヘッダー ("場所:http://www.aaa.com/uc/fn_wx_login.php"); }
- ?>
- = 「WeChatの公式アカウントのAppid」
- $url;
=- 'https://open .weixin.qq.com/connect/oauth2/authorize?appid='
.- $appid
.
'&redirect_uri=http%3a%2f%2fwww.aaa.com%2fuc%2ffn_callback.php&resp/span >
;
ヘッダー(
"場所:"
.- $url);
5. WeChatのユーザー認証ページで、ユーザーが「承認に同意する」を選択すると、WeChatがサードパーティのWebページのバウンスアドレスにジャンプするときにコードパラメータが添付されます。 - 6. サードパーティ Web ページのバウンス URL では、まずリクエストからコードを取得し、そのコードに基づいて openid と access_token を交換します。その後、openid と access_token に基づいて WeChat の関連インターフェイスを呼び出すことができます。ユーザー情報をクエリするための access_token。
PHP コード-
-
- $appid = 「WeChatの公式アカウントのappid」;
- $秘密 = " 公式アカウントは WeChat アプリのシークレットにあります"$get_token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='
- .; $appid.'&secret='.$secret. '&code='
- .$code.'&grant_type=authorization_code' ;curl_init() ; curl_setopt ($ch,CURLOPT_URL,$get_token_url); OPT_HEADER,0); curl_setopt($ch) , CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); $ch
- ); curl_close( $ch
); - //openid と access_token に基づいてユーザー情報をクエリします
- $access_token = $json_obj[' access_token'
]; - $openid
= - $json_obj['openid'
]; - = 'https://api.weixin.qq .com/sns/userinfo?access_token='.$access_token
- ' &openid='.$openid.'&lang=zh_CN';
- $ch
- =curl_init(); curl_setopt($ch ,CURLOPT_HEADER,0);curl_setopt($ch
, CURLOPT_RETURNTRANSFER, 1 ) ; - $res =curl_exec( $ch);
- curl_close($ch ) // jsonを解析する$res
- 、本当です); $ _SESSION['user'] = $user_objprint_r($user_obj
- ); ?>
上記では、WeChat パブリック プラットフォーム OAuth20 Web ページ認証 PHP の例を、関連コンテンツも含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。