我试图通过AJAX / d3.xml将一些Vars发布到一个php文件,但是php内部的print_r($ _ POST / $ _ GET)告诉我它们是空的。即使doc上的示例也不适用于我。
d3.xml("xxx.php")
.header("Content-Type", "application/x-www-form-url-encoded")
/*
.get("a=2&b=3", function(error, data) {
console.log(error);
})
*/
.post("a=2&b=3", function(error, data) {
console.log(error);
})
.on("load", createTable(data));
控制台告诉我有一个POST请求但是在POST下(在Firefox上,而不是在Chrome上)它会在一行中列出Vars“a = 2& b = 3”,而不是
a = 2
b = 3
通常如此。
我没有得到什么?
答案 0 :(得分:1)
首先,对评论中的混淆道歉。我正在查看旧版d3的来源。在较新的代码中,如果您不向d3.xml提供回调,它确实会返回一个您可以直接配置的xhr请求。 (如果你提供回调,它会像以前一样立即执行GET。)
你会讨厌这个,所以准备好了。 :)您的问题是因为您的Content-Type标头中有一个额外的短划线。你有:
application/x-www-form-url-encoded
但它应该是
application/x-www-form-urlencoded
在Firefox中查看jsfiddle的修改版本,我看到参数在列表视图中按预期显示:http://jsfiddle.net/WaT6r/3/