如何在Ruby中发送HTTP PUT请求?

前端之家收集整理的这篇文章主要介绍了如何在Ruby中发送HTTP PUT请求?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试向一个特定的URL发送一个PUT请求,并且迄今为止还没有成功.

如果我通过HTTP请求者GUI(例如this)来执行此操作,那么就像在以下URL上执行PUT一样简单:

http://www.mywebsite.com:port/Application?key=apikey\u0026amp;id=id\u0026amp;option=enable|disable

请注意,在上述请求中指定了端口号.当通过ruby代码提交请求时,我也需要这样做.

如何在Ruby中复制这样的请求?

解决方法

require 'net/http'

port = 8080
host = "127.0.0.1"
path = "/Application?key=apikey&id=id&option=enable"

req = Net::HTTP::Put.new(path,initheader = { 'Content-Type' => 'text/plain'})
req.body = "whatever"
response = Net::HTTP.new(host,port).start {|http| http.request(req) }
puts response.code

拉里的回答帮助我指出了正确的方向.更多的挖掘帮助我找到一个更加优雅的解决方案,指导这个答案.

http = Net::HTTP.new('www.mywebsite.com',port)
response = http.send_request('PUT','/path/from/host?id=id&option=enable|disable')

猜你在找的Ruby相关文章