2010-08-22 96 views

回答

16

你可以做這樣的事情......

require 'net/http' 

postData = Net::HTTP.post_form(URI.parse('http://thewebsite.net'), {'postKey'=>'postValue'}) 

puts postData.body 
4

標準庫Net::HTTP非常簡單,並處理POST

從文檔:

response = http.post('/cgi-bin/search.rb', 'query=foo') 

# using block 
File.open('result.txt', 'w') {|f| 
    http.post('/cgi-bin/search.rb', 'query=foo') do |str| 
    f.write str 
    end 
} 

有關如何使用Net :: HTTP更詳細的示例,請參閱八月Lilleaas的Net::HTTP cheat sheet repository on Github

+6

你不說什麼'http'對象,或者如何得到它 – 2010-08-22 20:28:50

+0

@Pablo這是正確的;我不。正如我所說的,我直接從Net :: HTTP的文檔(我鏈接到)抓住了這個例子。我認爲OP會通過學習如何使用Net :: HTTP來跟進。 (教一個人去釣魚......) – Telemachus 2010-08-22 20:45:04

+0

雖然我把它做好了鏈接,但是我已經編輯過但是​​把它翻了回來,因爲它看起來太具侵入性了。最佳答案= +10 – 2010-08-23 07:14:47

1

Net::HTTP如上所述,捲曲包裝CurbHTTParty。取決於你想要做什麼,它們可能是矯枉過正的。

1

有大量的Ruby的HTTP庫。有標準net/httplibcurl bindings。但是也有很多高級庫需要使用Web服務,例如ActiveResource和HTTParty。取決於你想要做什麼。也許你可以用更多的信息更新你的問題?