我剛剛接觸rails世界,並且正在嘗試構建一個應用程序,以允許我根據用戶輸入在Amazon和此類網站上搜索內容。使用rails來使用web服務/ apis
我已經做了一些研究,看起來httparty gem是一個很好的開始?目前發現的文件雖然不是最好的。他們並沒有真正給我提供很多信息(在哪裏放置代碼等)。
是否有任何現有的教程或代碼示例,我可以使用或看看給我一個這個東西如何工作的更好的想法?
我剛剛接觸rails世界,並且正在嘗試構建一個應用程序,以允許我根據用戶輸入在Amazon和此類網站上搜索內容。使用rails來使用web服務/ apis
我已經做了一些研究,看起來httparty gem是一個很好的開始?目前發現的文件雖然不是最好的。他們並沒有真正給我提供很多信息(在哪裏放置代碼等)。
是否有任何現有的教程或代碼示例,我可以使用或看看給我一個這個東西如何工作的更好的想法?
我正在研究這樣一個應用程序,所以讓我提供一些想法。
首先,如果你是一個完整的初來乍到Rails的,那麼作爲第一步,我建議採取並行的方法解決問題,有兩條軌道:
互動(發出請求和解析響應)這是兩個不同的問題,雖然你可能最終實現它們放在一起,最好先想想他們隔離。
對於第一個,我建議先寫幾個簡單的應用程序,以瞭解事情的工作方式。即使只有一個簡單的應用程序也需要一定量的用戶交互,可能會將記錄保存到數據庫等,這些問題與從API中消耗數據分開。在Rails上有無數的教程,但只要提一個,你可以嘗試Michael Harti的Learn Web Development with Rails作爲起點。
第二點,使用API數據與設計應用程序本身的問題截然不同。要了解更多關於這個問題的方面,我建議使用一個受歡迎的API客戶端寶石,如我所使用的(如你所提到的)HTTParty。我不建議在Rails應用程序中嘗試使用HTTParty方法,作爲練習,我建議在控制檯(irb)中進行一些操作。如果您安裝了gem(gem install httparty
),則可以從控制檯請求它(require 'httparty'
),並立即發出請求並解析來自API的響應。
例如爲:
irb(main):001:0> require 'httparty'
=> true
irb(main):002:0> response = HTTParty.get('http://twitter.com/statuses/public_timeline.json')
=> ...
一旦你得到了一個有點熟悉Rails和與訪問紅寶石的API,那麼你可以移動到實際構建應用程序本身。根據您對API的請求的複雜程度,您可以選擇如何在Rails應用程序中構建API請求:
include HTTParty
即可完成此操作,該類將模塊添加到類中。有很多關於如何做到這一點的例子,here is one。你提到你正在考慮使用HTTParty,我可以推薦,因爲我自己使用它。有其他選擇,如Faraday(更多請參閱this list of HTTP clients),但我發現對於大多數任務,HTTParty將會很好。文檔可能有點稀疏,但有一堆你可以從中工作的examples。
希望有幫助!
完美!謝謝! – Keva161
開始的最佳地點是首先學習Rails和MVC以及進入模型,視圖和控制器的內容。在你掌握了這些之後,這個問題的答案對你來說應該很容易。 –