Ruby on rails 如何在OpenURI(Ruby)中发送自定义头并检查它们
在以下文档中找到此项: 附加的头字段可以由可选的散列参数指定Ruby on rails 如何在OpenURI(Ruby)中发送自定义头并检查它们,ruby-on-rails,ruby,ruby-on-rails-3,open-uri,Ruby On Rails,Ruby,Ruby On Rails 3,Open Uri,在以下文档中找到此项: 附加的头字段可以由可选的散列参数指定 open("http://www.ruby-lang.org/en/", "User-Agent" => "Ruby/#{RUBY_VERSION}", "From" => "foo@bar.invalid", "Referer" => "http://www.ruby
open("http://www.ruby-lang.org/en/",
"User-Agent" => "Ruby/#{RUBY_VERSION}",
"From" => "foo@bar.invalid",
"Referer" => "http://www.ruby-lang.org/") {|f|
# ...
}
有人能告诉我如何检查这是否正常工作吗
有人能告诉我如何检查他们[附加标题字段]是否正常工作吗
您可以使用监听特定端口,例如2000:
$nc-l 2000
并相应地将主机更改为localhost:2000
:
# open.rb
require 'open-uri'
open("http://localhost:2000/",
"User-Agent" => "Ruby/#{RUBY_VERSION}",
"From" => "foo@bar.invalid",
"Referer" => "http://www.ruby-lang.org/") {|f|
# ...
}
通过运行程序
$ ruby open.rb
将使netcat显示以下内容:
$nc-l 2000
GET/HTTP/1.1
用户代理:Ruby/2.3.1
发件人:foo@bar.invalid
推荐人:http://www.ruby-lang.org/
接受编码:gzip;q=1.0,放气;q=0.6,同一性;q=0.3
接受:*/*
主机:本地主机:2000
显然,标题工作正常。(他们当然知道)首先要知道的是OpenURI是Ruby HTTP工具包中使用最多的代码之一,它有很多详细的检查和测试。结果,机会真的很好,它正在做它应该做的。因此,让我们扭转这一局面,以堆栈溢出的方式进行:向我们展示您正在做的事情,并解释为什么您认为它没有做您想要的事情。请参阅“”和“”,包括链接页面。