2012-06-28 35 views
0

我使用OAuth ::取()例如在PHP.net(Outh code我用鱈魚被PHP OAUTH類API

<?PHP 
try{ 
$oauth = new OAuth("consumer_key","consumer_secret",OAUTH_SIG_METHOD_HMACSHA1,OAUTH_AUTH_TYPE_AUTHORIZATION); 
$oauth->setToken("access_token","access_token_secret"); 

$oauth->fetch("http://photos.example.net/photo?file=vacation.jpg"); 

$response_info = $oauth->getLastResponseInfo(); 
header("Content-Type: {$response_info["content_type"]}"); 
echo $oauth->getLastResponse(); 
} catch(OAuthException $E) { 
echo "Exception caught!\n"; 
}?> 

該錯誤消息是

致命錯誤:類「的OAuth '在第3行找不到C:\ wamp \ www \ Jesvin \ MyTest1 \ test1.php

回答

3

您沒有可用的OAuth類,它是一個PHP擴展,不是核心軟件包的一部分,您將需要手動將其安裝到wamp中。首先要做的是檢查擴展是否可用但未加載。

您的php擴展庫將類似於/ path/to/wamp/php/ext(我不使用wamp,因此您必須爲您的路徑搜索google或在文件系統中查找自己)。

如果你看到一個oauth擴展,你可以跳過安裝oauth,如果你不需要獲得一個預編譯的dll,看看這裏:http://downloads.php.net/pierre/並且搜索「oauth」,有2個(不知道你應該選哪一個使用,所以選擇一個,如果它不起作用,嘗試另一個)。

下載它並將teh dll和其他php擴展一起粘在你的擴展目錄中。

然後找到您的php.ini文件(您可以使用<?php phpinfo; ?>的文件並將其加載到瀏覽器中以查看php.ini的位置)。尋找到擴展定義,要麼取消註釋或該行添加到您的php.ini文件

extension=php_oauth.dll

確保在上面的代碼中的DLL名稱是前述一樣的,你下載並安裝到擴展文件夾中的一個。此外,請確保在此行的開頭處有分號碼NO

這應該只是做到這一點。希望PHP能夠加載這個DLL並且它會工作。使用預先發布的dll並不總是有效,但在這種情況下,它會有希望工作。

+0

如果您無法在主機服務器上安裝任何內容,還有其他方法嗎?例如,運行OAuth的外部庫? – samyb8

+0

@ samyb8有一些純粹的PHP實現只是PHP類,但大多數是oAuth1,而不是您可能需要的oAuth2。大部分oAuth課程一旦「官方」擴展名穩定,便停止維護e.c.t.然而,你總是可以嘗試谷歌,我不能擔保的代碼,因爲我從來沒有使用它,但我發現這一點:https://github.com/fkooman/php-oauth-client – Lee