如何在 Rails 的视图上在 Ruby 上打印 X-Runtime?
How to print X-Runtime on Ruby on Rails's view?
我希望在我的视图中打印 Rack::Runtime 设置的响应时间。
我知道我们可以通过“curl -I address”获得所有 HTTP headers。
然而,Rails控制器中的响应object仅默认包含几个headers:
config.action_dispatch.default_headers = {
'X-Frame-Options' => 'SAMEORIGIN',
'X-XSS-Protection' => '1; mode=block',
'X-Content-Type-Options' => 'nosniff'
}
恐怕没有这个办法。原因是
- 当 Rack 添加
X-Runtime
header 到响应时,视图已经被渲染。这是显而易见的,因为如果不是,Rack 怎么知道视图渲染需要多长时间?所以你不能在服务器端将值插入到你的视图中。
- 在浏览器上 Javascript 开始 运行 时,包含 HTML 的响应已经被消费,响应的 headers已被抛出。所以你也不能在浏览器端将值插入到你的视图中。
我希望在我的视图中打印 Rack::Runtime 设置的响应时间。 我知道我们可以通过“curl -I address”获得所有 HTTP headers。
然而,Rails控制器中的响应object仅默认包含几个headers:
config.action_dispatch.default_headers = {
'X-Frame-Options' => 'SAMEORIGIN',
'X-XSS-Protection' => '1; mode=block',
'X-Content-Type-Options' => 'nosniff'
}
恐怕没有这个办法。原因是
- 当 Rack 添加
X-Runtime
header 到响应时,视图已经被渲染。这是显而易见的,因为如果不是,Rack 怎么知道视图渲染需要多长时间?所以你不能在服务器端将值插入到你的视图中。 - 在浏览器上 Javascript 开始 运行 时,包含 HTML 的响应已经被消费,响应的 headers已被抛出。所以你也不能在浏览器端将值插入到你的视图中。