我试图从Rails中的 AJAX 表单提交中解析POST参数,但是由于某种原因,它一直包含一个嵌套的、重复的参数版本,我不知道为什么。
** AJAX :**
$.ajax({
type: 'POST',
url: url,
data: JSON.stringify({foo:'bar',timestamp:Date.now()}),
dataType: 'json',
contentType: 'application/json; charset=utf-8'
});
字符串
轨道:
class TestController < ApplicationController
def post_test
puts "RAW POST: #{request.raw_post}"
puts "POST PARAMS: #{request.request_parameters().to_json}"
end
end
型
结果:
原始邮件:{“foo”:“bar”,“timestamp”:1690813226909}
POST参数:© 2019 - 2019版权所有粤ICP备16004449号
为什么request_parameters()
方法包含冗余的嵌套参数集?
2条答案
按热度按时间slmsl1lt1#
几乎可以肯定,因为您配置了wrap_parameters。
更新
嗯,看起来这在Rails 7中已经自动完成了,即使没有配置
wrap_parameters
。vngu2lb82#
在Jquery上阅读 AJAX 的文档:https://api.jquery.com/jquery.ajax/可以将对象、字符串或数组传递给数据参数
字符串
通过这种方式,你可以发送一个完整的对象,而不需要解析为字符串,并通过以下方式在Rails上接收它:
型
PD:对不起,我的英语不好