如何微信第三方登陆
时间:2016年06月03日 人气:...

转载请写明转自 www.65chian.top 


1.首先要去微信开放平台注册账号,其实申请了解网站应用开发(https://open.weixin.qq.com/cgi-bin/frame?t=home/web_tmpl&lang=zh_CN&token=41742f21338974b7b56791dadc5589171086b5ec),微信开放平台不像其他开放平台审核过程中会提供测试号,微信开放平台是要等你审核通过,并进行开发者资历认证后才可进行开发,因此要先申请,才能再测试

2.如何创建应用:

进入后按步骤一步一步操作,



授权回调 地址填写网站地址即可


3.开发者资历认证,要花300块钱进行认证,并且要求很高



4.认正通过后才可进行微信登陆等操作


5.代码如何写

    微信资源中心介绍(https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419316505&token=41742f21338974b7b56791dadc5589171086b5ec&lang=zh_CN)


        例:login.php(转载请写明转自 www.65chian.top)

               

<?php  

/**

* 请求微信登陆

*/

session_start();

$appid = "wx84a457fd757babda";  

$AppSecret="facf50f2d2c6f17b949acc54336c917d";

    $redirect_uri="http://webgame3.94php.com/weixin/user.php";

    $url=UrlEncode($redirect_uri);

$STATE="wx".time().mt_rand(10000,99999);

$_SESSION['STATE'] = $STATE;

if(!empty($_SESSION)){

$login_url="https://open.weixin.qq.com/connect/qrconnect?appid={$appid}&redirect_uri={$redirect_uri}&response_type=code&scope=snsapi_login&state={$STATE}#wechat_redirect";

   header("Location:".$login_url);  

}

   

  

?> 

                回调文件 user.php(转载请写明转自 www.65chian.top)

<?php

/**

* 请求微信登陆

* 接收到code 

* STATE与session进行比对防止csrf攻击

*/

session_start();

$code = $_GET['code'];

$STATE = $_GET['state'];

if(!empty($code) & $_SESSION['STATE']==$STATE){

$appid = "wx84a457fd757babda";  

$AppSecret="facf50f2d2c6f17b949acc54336c917d";

$url="https://api.weixin.qq.com/sns/oauth2/access_token?appid={$appid}&secret={$AppSecret}&code={$code}&grant_type=authorization_code";

   $wx = file_get_contents($url);

$wx_user = json_decode($wx,true);

                //回调验证

if(!empty($wx_user['access_token'])&!empty($wx_user['openid'])){

                        //请求登陆地址

$login_url="/?ct=wxlogin&openid={$wx_user['openid']}";

   header("Location:".$login_url);  

}

}else{

echo "未知错误,请重新提交";

exit;

}


?>

              请求登陆地址,为你网站登陆地址,在登陆页面进行验证,看看微信openid是否注册过,如何验证:建一个wx_login表,里面存本网站用户ID 和微信openid,然后在登陆页面查询此表,进行验证,如果有根据用户ID进行登录,没有就去注册页面,注册成功查信息插入到wx_login。


     6.关于第三方登录

          所有第三方登录都是通过官方给的接口,然后返回用户唯一的ID进行判断,然后登陆


   

转载请写明转自 www.65chian.top

    

    




热门评论