5

在我的控制器中,我通过以下方式在我的index方法中支持 HTML 和 JSON:

respond_to do |format|
  format.html
  format.json { render json: @user }
end

在浏览器中拉起它时,它会自然呈现为 HTML。但是,当我使用 content-typeapplication/json/user资源进行 curl 调用时(因为它是 index 方法),我仍然会得到 HTML 作为响应。

如何获取 JSON 作为响应?我还需要说明什么?

4

1 回答 1

8

您应该附加.json到请求的 url,提供的格式在routes.rb. 这是使用时的默认设置resources。例如,rake routes应该给你类似的东西:

show_user GET    /users/:id(.:format) users#show

在 HTML 中获取用户

curl  http://localhost:3000/users/1  

在 JSON 中获取用户:

curl http://localhost:3000/users/1.json    
于 2013-06-11T06:57:49.283 回答