1. www.aaa.com
과 같은 인증 콜백 페이지의 도메인 이름을 구성합니다. 2. 공식 계정인 fn_system.php를 시뮬레이션합니다.
PHP 코드
-
- 만약(비어 있음비어 있음($_SESSION['사용자'])){
- > 헤더( "위치:http://www.aaa.com/uc/fn_wx_login.php"
- ) }else
- { print_r($_SESSION
- ['사용자']) }
-
- ?>
- 3. 타사 웹페이지 접속 시 해당 세션에 세션 정보가 없으면 로그인 페이지인 fn_wx_login.phpPHP 코드
-
- $appid =
- "WeChat 공식 계정의 앱 ID" $url =
- 'https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$appid.'&redirect_uri=http://www.aaa.com/uc/fn_callback.php&resp/span>; > 헤더("위치:".
$url- ); > ?>
- 4. 로그인 페이지에서 appid를 조합하고 돌아갑니다. URL 및 기타 정보로 이동한 다음 WeChat의 사용자 인증 페이지로 이동합니다.
5. WeChat의 사용자 인증 페이지에서 사용자가 "승인 동의"를 선택하면 WeChat이 제3자 웹페이지의 반송 주소로 돌아갈 때 코드 매개변수가 첨부됩니다. - 6. 제3자 웹페이지의 반송 URL에서 먼저 요청에서 코드를 얻은 다음 코드를 기반으로 openid 및 access_token으로 교환합니다. 그런 다음 WeChat의 관련 인터페이스를 호출할 수 있습니다. openid와 access_token을 기반으로 사용자 정보를 쿼리합니다.
PHP 코드
- > =
- "WeChat 공식 계정 Appid" ; $secret =
- "WeChat 공식 계정의 앱 비밀" ; $code =
- $_GET["코드"]; $get_token_url =
- ' https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.' &secret='.$secret.' &code='.$code .'&grant_type=authorization_code'
- $ch = 컬_init();
- curl_setopt($ch,CURLOPT_URL,
- $get_token_url); curl_setopt( $ch,CURLOPT_HEADER,0);
- curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10)
- $res = curl_exec(
- $ch)
curl_close(- $ ch); ,true)
- //사용자 쿼리 openid 및 access_token 기반 정보
- $access_token = $json_obj [ 'access_token'] 🎜>[
- 'openid']; .weixin.qq.com/sns/userinfo?access_token='
- .$access_token.'&openid='
- .$openid.'&lang=zh_CN';
- $ch = 컬_init() curl_setopt($ ch,CURLOPT_URL,$get_user_info_url
- ) curl_setopt($ch,CURLOPT_HEADER,0); 1); 🎜>$res = 컬_exec($chcurl_close($ch) 🎜>
- $user_obj = json_decode($res,true); >
- $_SESSION['사용자'] = $ user_obj
- ?>
-
위 내용은 관련 내용을 포함하여 WeChat 공개 플랫폼 OAuth20 웹페이지 인증 PHP 예제를 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.