2014-01-24 52 views
8

我正在使用OAuth庫連接到我的Etsy商店(etsy.com)並嘗試檢索有關已售訂單的某些信息。執行OAuth庫連接到ETSY商店時發生致命錯誤

這是庫:https://github.com/Lusitanian/PHPoAuthLib/blob/master/examples/etsy.php

不過,我不斷收到一個錯誤後,我「允許訪問」。我收到一個令牌,但是當我允許訪問時,問題正在發生。

以下是完整的錯誤:

Fatal error: Uncaught exception 'OAuth\Common\Http\Exception\TokenResponseException' with message 'file_get_contents(http://openapi.etsy.com/v2/private/users/__SELF__): failed to open stream: HTTP request failed! 
HTTP/1.1 400 Bad Request ' in /hermes/bosoraweb013/b1151/ipg.tahara/APIs/PHPoAuthLib-master/src/OAuth/Common/Http/Client/StreamClient.php:70 Stack trace: #0 /hermes/bosoraweb013/b1151/ipg.tahara/APIs/PHPoAuthLib-master/src/OAuth/OAuth1/Service/AbstractService.php(137): 
OAuth\Common\Http\Client\StreamClient->retrieveResponse(Object(OAuth\Common\Http\Uri\Uri), NULL, Array, 'GET') #1 /hermes/bosoraweb013/b1151/ipg.tahara/APIs/PHPoAuthLib-master/examples/etsy.php(47): 
OAuth\OAuth1\Service\AbstractService->request('/private/users/...') #2 {main} thrown in /hermes/bosoraweb013/b1151/ipg.tahara/APIs/PHPoAuthLib-master/src/OAuth/Common/Http/Client/StreamClient.php on line 70 

有沒有人有任何輸入,以確定是什麼問題?

+2

該消息告訴你你需要知道什麼。 HTTP請求給出了'400錯誤請求'。這告訴你兩兩件事,一是你有某種原因的無效請求(覈對API文檔)和第二,你可能應該在try/catch塊執行此代碼,以便您可以處理這樣的例外。 –

+2

這聽起來像是您嘗試連接到HTTP並需要連接到HTTPS。如果是這樣的情況下,信息應該是在響應頭,只是切換到HTTPS可能是要檢查它更簡單的方法。 – samyb8

+0

@MikeBrant我只是使用庫中的請求(我提供的鏈接中的請求)。我怎麼能解決這個問題? – user2509541

回答

0

錯誤是告訴你,圖書館正在收回400錯誤,這意味着服務器不喜歡你的請求。如果這是可能發生的事情,那麼嘗試catch塊是你的朋友,如果只是優雅地終止並記錄問題。

如果這是我,我會有錯誤,請求和庫對象print_r在標籤或文本文檔中,以便我可以更好地瞭解發生了什麼。

我會想,如果這是一個身份驗證問題,需要使用HTTPS而不是HTTP,在庫中的缺陷,終點問題,或者在某些地方或其他只是一些不好的數據。你擁有的信息越多,你就越能分辨出並確認能夠以更快的速度工作,從而可以解決問題。

祝您好運調試和追蹤故障。我知道這些事情可能會讓人感到沮喪。

相關問題