网页授权

/*

 

授权地址如下: ( 请根据自身平台自行拼接 )

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxexxx94bc3acabcde&redirect_uri=http%3a%2f%2fyanwo.baidu.com%2fa.php&response_type=code&scope=snsapi_base&state=baidu#wechat_redirect

 

scope参数:可以有2中值

snsapi_base     : (  不弹出授权页面,直接跳转,用户如果关注了此平台可以获取到 openid 并通过 openid获取用户信息)

snsapi_userinfo : (  弹出授权页面,可通过 openid 拿到昵称、性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息 )

 

*/

 




//     获取网页授权

if ( isset( $_GET['code'])){
    
 
     $code =  $_GET['code'];

     $appid     =   //  平台的AppId 
        
     $appsecret =   //  平台的AppSecret
        
     $userToken = userToken( $appid, $appsecret, $code);       //  授权后通过 code 获得 token

     $openid =  $userToken['openid'];                        //  取得用户的 openid
     

}    

 

 

//  通过 code 换取网页授权 access_token

function userToken( $appid, $appsecret, $code){
    
     $url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='. $appid.'&secret='. $appsecret.'&code='. $code.'&grant_type=authorization_code';

     
     $ch = curl_init();

    curl_setopt( $ch, CURLOPT_URL,  $url);

    curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER,  FALSE); 

    curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST,  FALSE); 

    curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1);

     $output = curl_exec( $ch);

    curl_close( $ch);

     $jsoninfo = json_decode( $outputtrue);

     return  $jsoninfo;

}

你可能感兴趣的:(网页)