这不起作用:
run Proc.new do |env|
[200,
{
"Content-Type" => "application/json; charset=UTF-8"
}, ["{\"name\":\"Rack App\"}"]]
end
但这样做:
run Proc.new { |env|
[200,
{
"Content-Type" => "application/json; charset=UTF-8"
}, ["{\"name\":\"Rack App\"}"]]
}
任何想法,为何与do..end一起使用时抛出错误?
我收到错误:
app.ru:1:in new: tried to create Proc object without a block (ArgumentError)
答案 0 :(得分:2)
您的第一个代码被解释为:
run(Proc.new) do |env|
...
end
并且阻止传递给run
而不是new
。这个问题可以通过以下方式解决:
run(Proc.new do |env|
...
end)