2012-10-11 55 views
0

嗨,我從我的Rails應用程序訪問Pingdom API時遇到問題。這裏是代碼:從Rails使用HTTParty訪問Pingdom API

auth = {:username => pingdom_username,:password => pingdom_password,:key => application_key} response = HTTParty.get(「https://api.pingdom.com/api/ 2.0/checks「,:basic_auth => auth)

我嘗試了很多方法(將應用程序密鑰作爲單獨的標題,具有不同的名稱:key,:app_key,:api_key),但我總是收到錯誤錯誤與應用程序鍵:

所以,

提出response.body

返回:

{「error」:{「statuscode」:403,「statusdesc」:「Forbidden」,「errormessage」:「Missing application key。請參閱文檔。「}}

任何想法我究竟做錯了什麼?謝謝你在前進

+0

如果你不想重新發明輪子,Ruby中有一個Pingdom API寶石。由於原件有些過時,我使用它的回購。 https://github.com/digitalmines/pingdom-client – undefinedvariable

回答

1

我發現我的misstake :)關鍵應被設置爲HTTP頭

一種方法可以成爲:

response = HTTParty.get(「https://api.pingdom.com/api/2.0/checks」,:basic_auth => auth,:headers => {「App-Key」=> application_key} )

另一種方法是創建一個類,您可以在其中設置參數並調用getThroug這個班級。

類Pingdom的

include HTTParty 
headers "App-Key" => "xxxxxxxxxxxxxxxxxxxxxxxxxxxm6ogjzpd7v" 

響應= Pingdom.get( 「https://api.pingdom.com/api/2.0/checks」:basic_auth => AUTH)