将请求头信息传递给app.get
问题描述:
有没有办法将请求信息(如HOST头值)传递给app.get?将请求头信息传递给app.get
我的应用程序需要一个特定的主机存在,所以当我常这样称呼它:
app.get(“富”)
具体来说,我想覆盖
request.env["HTTP_HOST"]
值。
TIA
答
我不知道这帮助...我见过类似的代码如下:
app.call({
"HTTP_HOST"=>"...",
"SCRIPT_NAME" => "",
"PATH_INFO"=>"/lala/#{lala_id}/",
"QUERY_STRING" => "",
"SERVER_NAME" => "",
"SERVER_PORT" => "80",
"REQUEST_METHOD"=>"GET",
"rack.input" => StringIO.new
})
你也许可以仍然使用.get
,只是通过HTTP_HOST作为一个选项像上面一样?
答
为不用彷徨方法文档是在这里:http://api.rubyonrails.org/classes/ActionDispatch/Integration/RequestHelpers.html#method-i-get
你可以这样做:
app.get('/foo', nil, {'HTTP_HOST' => "bar.com"})
当然,你不需要知道如果你知道路由的路径:'app.get(app.foo_path,nil,{'HTTP_HOST'=>“bar.com”})' – clozach