我正在寻找在Rails应用程序中的某些资源上实现内容协商的功能。我正在使用Mootools,可能会将XMLHTTPRequest接受的内容类型调整为“application/json”。
有什么方法可以在我的 Controller 中获取此信息并生成JSON响应而不是XHTML?
我试图避免做类似的事情:
http://site/resource/1?format=JSON
...因为它弄脏了我的网址,造成了一定程度的冗余,而且不够灵活。
谢谢!
最佳答案
您可以在 Controller 方法中使用 respond_to
节,如下所示:
respond_to do |format|
format.html { # Generate an HTML response... }
format.json { # Generate a JSON response... }
end
Rails根据客户端提交的HTTP Accept header 的值确定响应格式。
关于ruby-on-rails - Rails中的RESTful内容协商,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1082513/