小編 隔天推送php教程,php技巧,php視頻教程,MySQL,筆試題等諸多優質內容,最接地氣、重服務的本地微信平臺!關注我們妥妥沒錯!
(商務合作聯繫QQ號:2230304070)
http://www.jsosuo.com/index.php/Blog/detail.html?d=66
本次把我使用第三方新浪微博登錄接口的經驗來跟大家分享一下,希望對大家有所幫助,尤其對沒是使用過新浪微博登錄接口的用戶
使用新浪微博登錄接口也需要得到新浪微博的認可,所以也需要 微博開發平臺 實現四步驟就行了,開發者註冊-》創建應用-》完善應用資料-》提交審核。等提交審核完成後就可以開發這一塊了。以下是具體步驟。
一.準備工作
登錄 新浪微博開發平臺http://open.weibo.com/ ,若果沒有微博帳號的可以註冊一個新浪微博。登錄成功後就進行資料填寫和身份認證,這個自己去摸索下,等認證成功後。
可以添加新網站(也就是你要使用微博登錄的那個網站)http://open.weibo.com/webmaster/add,按照指定項填寫完成後,可以在菜單欄 我的應用 中看到你剛剛提交的網站,當然不是這麼簡單的就可以了,你可以清楚的看到「未提交審核」,微博開發平臺規定,未審核成功的網站只允許使用測試帳號(需要手動添加測試帳號),只有審核成功的才能上線使用。咱們先看一下我們已經獲取到了app key和app secret,這相當於我們使用微博登錄接口的帳號。那接下來開始開發吧。
二.開發代碼
先下載php SDK文檔,下載地址https://github.com/xiaosier/libweibo,如果沒有的話,就在http://open.weibo.com/wiki/SDK裡面找php SDK進行下載。
下載完成後只保留saetv2.ex.class.php這個文件(當然你要有興趣的情況下可以研究下其它文件,基本上都是演示文件)。
a. 通過以下php代碼跳轉到微博登錄頁面
require_once("./Login/weibo/saetv2.ex.class.php");$callback_url = "http://www.abc.com/weibo_callback.php";//回調地址,必須是提交網站域名下的某一個url$obj = new SaeTOAuthV2($client_id, $client_secret);//$client_id就是App Key $client_secret就是App Secret$weibo_login_url = $obj->getAuthorizeURL($callback_url);header("Location:".$weibo_login_url);
b.通過以下代碼獲取openid和access_token以及用戶詳細信息。然後可以把這三個數據存入到 第三方用戶數據表other_user裡(這根據開發要求隨意)。
require_once("./Login/weibo/saetv2.ex.class.php");$obj = new SaeTOAuthV2($client_id, $client_secret);//$client_id就是App Key $client_secret就是App Secret$code = $_GET['code'];$callback_url = "http://www.abc.com/weibo_callback.php";//回調地址,必須是提交網站域名下的某一個url$keys["code"] = $code;$keys["redirect_uri"] = $callback_url;$a = $obj->getAccessToken($keys);//$a是一個數組,裡面有uid(用戶的編號)和access_token.$info = file_get_contents("https://api.weibo.com/2/users/show.json?access_token={$a['access_token']}&uid={$a['uid']}");
c. 如果你的網站有自己的帳號表user,那麼你可以在other_user表裡加一個欄位userId,通過userId關聯你自己網站裡的用戶表user。當從新浪微博登錄頁面登錄成功後回跳到weibo_callback.php時,可以在這個文件裡設置$_SESSION['other_userId'](目的是記住是哪個第三方用戶),也就是other_user的id;設置後跳轉到帳號綁定頁面,然後開始綁定你網站的用戶,綁定完成後,把被綁定的網站用戶user的id存入other_usre表$_SESSION['other_userId']用戶的userId。下回用戶可以直接通過登錄qq就可以找到綁定的那個user用戶了,從而成功登錄你的網站了