对于html和ajax请求,我们不需要指定格式,但是对于xml请求,我们需要指定格式 :format => 'xml'
<%= button_to t('.add_html'), line_items_path(:product_id => product, :format => 'xml'), :product => product.id %>
为什么我们必须指定格式?
当您通过访问链接访问页面时,浏览器实际上在标题中指定它接受HTML作为响应类型:
提交AJAX请求时,浏览器实际上会将一个标头附加到该请求,称为X-Requested-With
将请求标记为XMLHttpRequest
:
由于存在这些标头,因此服务器知道该如何响应。要访问xml
页面格式,您必须告诉服务器您想要XML格式。如果您以编程方式构建请求,则可以将Accept
标头设置为text/xml
,服务器将以XML响应进行响应
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句