簡體   English   中英

OAuth1.0與php和CURL無法正常工作

[英]OAuth1.0 with php and CURL not working

  • 我想嘗試使用OAuth1.0的api。
  • 問題是,當我嘗試使用Postman時,我得到了響應,但是PHP卷曲它給出了錯誤。
  • 郵遞員我傳遞的參數如下

    url ='xxxx',身份驗證內容為type = OAuth1.0,Consumer Key,Consumer Secret,Token,Token Secret,Timestamp,Nonce,Version = 1.0,Realm = Optional

  • 以下是我試過的代碼


$url="xxx";
$header[]         = 'Content-Type: application/x-www-form-urlencoded';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_HTTPHEADER,     $header);
curl_setopt($ch, CURLOPT_POST,        true);
curl_setopt($ch, CURLOPT_POSTFIELDS, urlencode('Authorization:OAuth oauth_consumer_key="xxx",oauth_token="xxx",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1475651061",oauth_nonce="LyA5sR",oauth_version="1.0",oauth_signature="xxx"'));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
if(curl_error($ch))
{
echo 'error:' . curl_error($ch);
}
echo "<pre>";print_r($result);exit;
  • 我添加了CURLOPT_SSL_VERIFYPEER,因為存在認證問題。 現在我從api curl錯誤403獲得“拒絕訪問”,因為我通過卷曲傳遞Oauth 1.0的方式有問題。
  • 這是我第一次用curl嘗試outh1.0。 請幫我解釋一下我的代碼。 我試過用這個鏈接

問題是oauth簽名沒有正確形成。 您可以參考https://oauth.net/core/1.0/以獲得更清晰的信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM