2012-10-11 109 views
3

我目前正在嘗試爲我的網站安裝LinkedIn的登錄按鈕。我試圖像開發人員部分所展示的那樣一步一步來。在我編寫代碼來獲取請求令牌並使用print_r進行檢查之後。LinkedIn Api - 未捕獲異常'OAuthException'

define("my consumer key"); 
define("my consumer secret"); 

$oauth = new OAuth(my consumer key, my consumer secret); 

//The first item of business is getting a request token 
$request_token_response = $oauth->getRequestToken('https://api.linkedin.com/uas/oauth/requestToken'); 

if($request_token_response === FALSE) { 
     throw new Exception("Failed fetching request token, response was:" 
     . $oauth->getLastResponse()); 
} else { 
     $request_token = $request_token_response; 
} 

print "Request Token:\n"; 
printf(" - oauth_token  = %s\n", $request_token['oauth_token']); 
printf(" - oauth_token_secret = %s\n", $request_token['oauth_token_secret']); 
print "\n"; 

我有「致命錯誤:未捕獲的異常‘OAuthException’......同等證書不能與已知的CA證書進行身份驗證」。被稱爲錯誤的行是低於

$request_token_response = $oauth->getRequestToken('https://api.linkedin.com/uas/oauth/requestToken'); 

我不明白什麼是錯誤試圖告訴我,以便我可以解決該問題。我將不勝感激,並提供或指導,以幫助我更好地瞭解此錯誤消息正試圖傳達以及如何解決它。

+0

常量聲明似乎是錯誤的,因爲它沒有爲恆附帶價值,請查看本頁面developer.linkedin.com/documents聲明/ getting-oauth-token-php – Ifthikhan

回答

4

似乎該庫正在嘗試驗證SSL證書,但它不能這樣做。您可以通過方法OAuth :: disableSSLChecks禁用ssl檢查。我假設您使用以下pecl擴展http://www.php.net/manual/en/class.oauth.php。如果沒有,您使用的客戶端庫應該有一個禁用SSL證書驗證的方法。

.... 
... 
$oauth = new OAuth(my consumer key, my consumer secret); 
$oauth->disableSSLChecks(); 
.. 
... 

理想情況下,你會實例化後立即做

+0

我想如何調用該方法? – Octavius

+0

@Octavius'$ oauth-> disableSSLChecks();' –

+1

@Octavius我通過回答所需的代碼示例進行了修改。 – Ifthikhan