我正在使用 rails 创建一个 REST api,并且我有一个与路由相关的简单问题以及如何接受对我的 api 的请求。
在我的路线文件中,我有以下代码:
namespace :api do
namespace :v1 do
resources :productOp, :path => "product", :defaults => { :format => 'json' }
end
end
使用此代码,如果我在 Web 浏览器中访问 url:
http://localhost:3000/api/v1/product
它工作正常。另一方面,它只接受 json 格式的帖子
如果我删除 ":defaults => { :format => 'json' }" 我无法在网络浏览器中打开相同的 url,我会收到 406 http 消息,因为它试图找到我的#index HTML。
谁能为我解释为什么当我删除“:defaults => {:format =>'json'}”时会发生这种情况?以及如何制作一个接受 http post 请求和 json 的 API?
只是为了添加信息,我的控制器总是以 json 格式响应,因为我在第一行的控制器“respond_to :json”中包含了这一点。