Sinatra 设定 消息体,状态码和消息头

2023-12-19 16:16 更新

通过路由代码块的返回值来设定状态码和消息体不仅是可能的,而且是推荐的。但是,在某些场景中你可能想在作业流程中的特定点上设置消息体。你可以通过 body 辅助方法这么做。如果你这样做了,你可以在那以后使用该方法获得消息体:

get '/foo' do
  body "bar"
end

after do
  puts body
end

也可以传一个代码块给 body,它将会被 Rack 处理器执行(这将可以被用来实现 streaming,参见“返回值”)。

和消息体类似,你也可以设定状态码和消息头:

get '/foo' do
  status 418
  headers \
    "Allow"   => "BREW, POST, GET, PROPFIND, WHEN",
    "Refresh" => "Refresh: 20; http://www.ietf.org/rfc/rfc2324.txt"
  body "I'm a tea pot!"
end

如同 body, 不带参数的 headers 和 status 可以用来访问 他们你的当前值。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号