天天看點

關于oauth的幾篇文章

轉載自:http://www.neatstudio.com/show-1597-1.shtml

本文隻是一個收集的連結,關于oauth,可以去看一下wiki百科,對于PHP的oauth支援,可以看一下手冊

國内很早就有不少網站支援oauth,隻是更多的網站都沒有做出此類開放的功能。不過,瘋狂的時候來的總是那麼突然。國内對Oauth的支援也就突然間的多了起來,可能,最讓人記的清楚的還是新浪。但當時關于 oauth的文章還不是特别多,隻是在QQ開放oauth後,突然間文章就多了很多,理由是,QQ所支援的oauth協定居然是非标的。。。。

好吧,讓我們看看其他人是怎麼說的:

1、使用QOAuth來進行新浪/騰訊微網誌驗證(一)

2、老王的:基于PECL OAuth 打造微網誌應用

3、android下的:android開發我的新浪微部落格戶端-OAuth 篇(2.1)

4、騰訊微網誌開放平台的PECL的OAuth 封裝

5、騰訊微網誌開放平台練手:微網誌擂台

6、使用 PECL 的 OAuth 庫通路 QQ 微網誌 API

其中4、5、6都是mikespook寫的,他說,QQ 微網誌的API裡有點重要的事情,并列出來了。看例子:

<?php

include('define.php');

try {

$oauth = new OAuth(OAUTH_KEY, OAUTH_SECRET, OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_URI);

$oauth->enableDebug();

// 很重要!!!在 OAuth 标準裡是沒有規定 nonce 的長度的,但是 QQ 對 nonce 的長度做了要求——32 位元組長。如果不設定一下,會傳回 400 錯誤。我為此糾結了一天。

$oauth->setNonce(md5(rand()));

// CALLBACK 一定要設定,OAuth 擴充的文檔上是沒設定的,但是 QQ 這裡不設會報錯

$requestTokenInfo = $oauth->getRequestToken(REQUEST_TOKEN, CALLBACK);

$_SESSION['oauth_token_secret'] = $requestTokenInfo['oauth_token_secret'];

// header("Location: ……") 亦可

echo "<p><a href="" target="_blank" rel="external nofollow" target="_blank" rel="external nofollow" . AUTHORIZE . "?oauth_token=" . $requestTokenInfo[" mce_href="" target="_blank" rel="external nofollow" target="_blank" rel="external nofollow" . AUTHORIZE . "?oauth_token=" . $requestTokenInfo["oauth_token'] . "'>authorize</a></p>";

} catch (OAuthException $e) {

var_dump($e);

}

callback.php

<?php

include('define.php');

try {

$oauth = new OAuth(OAUTH_KEY, OAUTH_SECRET, OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_URI);

$oauth->enableDebug();

// 很重要!!!如果不設定一下,會傳回 401 錯誤。

$oauth->setNonce(md5(rand()));

$oauth->setToken($_GET['oauth_token'], $_SESSION['oauth_token_secret']);

$accessTokenInfo = $oauth->getAccessToken(ACCESS_TOKEN, null, $_GET['oauth_verifier']);

$_SESSION['access_token'] = $accessTokenInfo['oauth_token'];

$_SESSION['access_secret'] = $accessTokenInfo['oauth_token_secret'];

header('Location: room.php');

} catch (OAuthException $e) {

var_dump($e);

}

7、這是針對新浪微網誌的OAuth 協定分析一

8、對新浪微網誌的OAUTH開發,居然還有一個總結:新浪微網誌OAuth 認證總結

9、又是老王發的牢騷:OAuth 那些事兒