【发布时间】:2012-07-05 05:08:16
【问题描述】:
所以我有一个 Padrino 应用程序,其控制器大致如下所示(为简洁起见):
App.controllers :questions do
get :index, :with => :id, :provides => [:html, :json] do
# Stuff
end
post :index, :with => :id, :provides => [:html, :json] do
# Other stuff
end
end
如果我在浏览器中点击“questions/1”,我会看到给定问题的 HTML 页面。如果我点击“questions/1.json”,我会看到问题的 JSON 表示。完全符合我的预期。
现在,如果我通过 Web 表单向“questions/1”提交 POST 请求,它就可以工作了。但是,如果我尝试向“questions/1.json”发送 POST 请求(表明我想要 JSON 格式的响应,或者至少我认为它是这样工作的),我会得到 405方法不允许。
我猜我在这里误解了一些基本的东西。我错过了什么?更重要的是,我应该如何定义一个路由来接受 POST 请求并提供 HTML 或 JSON 响应?
【问题讨论】:
标签: ruby sinatra padrino http-status-code-405