2016-11-08 72 views
0

我正在實施Socrata API以便能夠解析City of Chicago open data set中的公開可用數據。我真的只關心數據本身,所以我最初並不認爲我需要通過ngrok公開的應用程序來實現OAuth2才能獲取數據。使用Socrata API實現OAuth2

我最初的嘗試是採取他們的文檔中提到的GET請求,並嘗試通過郵遞員獲得響應。

下面是這種嘗試的一個例子:

enter image description here

我還添加了我的Socrata應用令牌作爲查詢字符串設置了一個param,但表現出了同樣的信息。

所以我告訴自己,好的,也許他們不推薦使用GET請求而不讓客戶端通過OAuth2。如果他們沒有貶低這些GET請求,我寧願不要不得不面對的OAuth2,但我開始實施認證過程一切都很順利,直到我到了以下說明找到here

enter image description here

除了'authorization_type'之外,我有每個需要包含在POST請求中的值。這是從哪裏來的?我嘗試以字符串的形式留下'authorization_type',但在此問題的頂部圖像中收到類似於'Invalid username or password'消息的響應。

enter image description here

回答

0

你只能訪問公共數據集從芝加哥的數據門戶網站?從您的屏幕截圖看,您似乎試圖訪問公開的Building Permits dataset

身份驗證是only required for modifying datasets or accessing private data,所以機會非常好,你甚至不需要進行身份驗證。只要包括一個application token與您的節流目的請求。

很高興能幫助您找出您的OAuth工作流程,但聽起來好像可能沒有必要。

+0

感謝Chris的快速反應!我嘗試在GET https://data.cityofchicago.org/resource/ydr8-5enu.json?的頭文件中包含'X-App-Token':,但我仍然使用相同的消息得到認證失敗響應如在第一圖像中一樣。有任何想法嗎? –

+0

@AdamFreymiller - 重複我上面所說的,如果您只是在該公共數據集上執行GET請求,則根本不需要包含任何'Authorization'頭。這聽起來像你還包括一個不必要的'Authorization'頭,因爲如果你包含一個帶有錯誤應用令牌的X-App-Token頭,你會得到一個'Invalid app_token specified'錯誤。 – chrismetcalf

+0

你完全正確!我刪除了授權標題,它像一個魅力。 –