在我的控制器中,我通过以下方式在index
方法中支持HTML和JSON:
respond_to do |format|
format.html
format.json { render json: @user }
end
在浏览器中提取时,它会自然地呈现HTML。但是,当我对application/json
资源的内容类型为/user
进行卷曲调用时(因为它是索引方法),我仍然会将HTML作为响应。
如何将JSON作为回复?我还需要指定什么?
答案 0 :(得分:8)
您应该将.json
附加到请求的网址,提供的格式在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