我正在使用Rails 4.2.7。我有一个如此设置的请求:
2.3.0 :001 > url = 'http://www.mydomeina.com/results/browse.cfm?ID=4187141102&Gen=B&Begin=1&End=31&Max=31'
=> "http://www.mydomeina.com/results/browse.cfm?ID=4187141102&Gen=B&Begin=1&End=31&Max=31"
2.3.0 :002 > uri = URI(url)
=> #<URI::HTTP http://www.mydomeina.com/results/browse.cfm?ID=4187141102&Gen=B&Begin=1&End=31&Max=31>
2.3.0 :003 > req = Net::HTTP::Get.new uri
=> #<Net::HTTP::Get GET>
2.3.0 :004 > req["Referer"] = 'http://www.mydomeina.com/results/browse.cfm?ID=4187141102&Gen=B&Begin=1&End=31&Max=31'
=> "http://www.mydomeina.com/results/browse.cfm?ID=4187141102&Gen=B&Begin=1&End=31&Max=31"
我将req["Referer"]
设置为设置标头的示例。我的请求对象中可能还有其他标头。我怎么弄清楚它们都是什么?这失败了:
2.3.0 :009 > req.keys
NoMethodError: undefined method `keys' for #<Net::HTTP::Get GET>
Did you mean? key?
和req.headers
一样。如何迭代我的请求对象以找出所有标头是什么?不能以与我现在正在做的不同的方式构造请求对象。
答案 0 :(得分:0)
尝试
req.each_key{|k| puts k}
或
req.each{|k,v| puts "#{k} => #{v}"}
从控制台内部查看对象上的方法,您可以随时执行
req.methods - Ojbect.methods