2017-08-06 94 views
-1

InvalidURIError(壞的URI(是不是URI)?:https://api.flightstats.com/flex/schedules/rest/v1/json/from/VNS/to/DEL/departing/2017/ 8/7的appid = 94f56975 &的AppKey = 0a0dc2b64f177ab866f0dba59342ffa4)獲得一些領域 怎麼解決這個error.useing httparty post方法。InvalidURIError時httparty post方法,並通過用戶

飛行= HTTParty.post(」 https://api.flightstats.com/flex/schedules/rest/v1/json/from/# {PARAMS [:從]} /到/#{PARAMS [:至]} /出發/#{PARAMS [:年]}/ #{PARAMS [:月] } /#{params [:day]}?appId = 94f56975 & appKey = 0a0dc2b64f177ab866f0dba59342ffa4「)

+0

HTTParty.post(「https://api.flightstats.com/flex/schedules/rest/v1/json/from/#{params[:from]}/to /#{params [:to]}/departure /#{params [:year]} /#{params [:month]} /#{params [:day]}?appId = 94f56975&appKey = 0a0dc2b64f177ab866f0dba59342ffa4「) – rohan

+0

after刪除空格,@headers = {「server」=> [「Apache-Coyote/1.1」 ],「allow」=> [「HEAD,GET,OPTIONS」],「content-length」=> [「0」],「date」=> [「Sun,06 Aug 2017 14:15:32 GMT」] ,「連接」=> [「關閉」]}> – rohan

+0

你說的是正確的。如何獲得我們的需求數據,因爲我不使用flightstats api .. – rohan

回答

0

有兩個問題。首先,URL包含導致無效URL的#{param‌​s[:year]}#{params[:month]}之間的空格。該代碼嘗試請求POST,但根據其documentation該端點接受GET請求。

你的代碼更改爲:

HTTParty.get(
    "https://api.flightstats.com/flex/schedules/rest/v1/json/from/"{params[:from]}/to/#{params[:to]}/departing/#{params[:year]}/#{params[:month]}/#{params[:day]}?appId=94f56975&appKey=0a0dc2b64f177ab866f0dba59342ffa4" 
) 
+0

謝謝你spickermann。 – rohan

+0

一個問題如何在我們的數據庫中創建散列數據數組。多個記錄被採取。如何創建一個。我是這樣嘗試的。 response.each do | hash | \t \t \t FS =散列[:FS] \t \t IATA =散列[:IATA]!Airport.create(FS:FS,IATA:IATA) \t \t渲染:JSON =>響應 \t \t端 – rohan

+0

OKK。但只有一個問題是允許的,爲什麼在這裏問。 – rohan

相關問題