我的请求看起来像这样
var xhr = new XMLHttpRequest();
[...]
xhr.send("param1=" + obj.param1 + "¶m2=" + val);
我更喜欢写类似
的东西xhr.send( {"param1": obj.param1, "param2": val} );
(A)可以这样做吗?
(B)我在哪里可以找到能够回答这个问题的规范?
答案 0 :(得分:2)
有可能吗?
目前不是,但草案中包含了这些内容:http://www.w3.org/TR/XMLHttpRequest/#the-send-method。 XmlHttpRequest应该能够发送ArrayBuffers,Blobs,Documents,strings和FormData对象(examples at html5rocks)。
但是,不支持发送对象 - 它们需要是可序列化的。您可以将它们作为JSON字符串发送,或使用众多库函数之一生成URL参数字符串(如jQuery.param()
)。
我在哪里可以找到能够回答这个问题的规范?
我已将上述规范链接起来,但是对于浏览器支持,您需要查看compatibility tables或浏览器的文档(例如,MDN处的FF。)
答案 1 :(得分:0)
你可以使用jQuery轻松完成这类工作:jQuery.ajax({ url: http://yoururl.com, data: {"param1": obj.param1, "param2": val}});