【发布时间】:2017-05-17 22:38:17
【问题描述】:
如何使用纯 Javascript(不是 JQuery)的 POST AJAX 请求发送自定义 HTTP 正文?我实际上是在尝试在正文中发送一个 JSON 文件。我可以设置自定义标头字段,但找不到如何设置 HTTP 正文。
下面是代码
function calculateorder() {
document.getElementById("finalize").style.display = "inline";
url1 = "https://ethor-prod.apigee.net/v1/stores/";
url2 = "/orders/calculate?apikey=wSgbv9PE8aJhDOI17vvTUX1NlAceUXG7";
url = url1 + store_id + url2;
var xmlhttp;
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
alert(xmlhttp.responseText);
}
}
xmlhttp.open("POST", url, true);
xmlhttp.setRequestHeader("Content-Type", "application/json");
xmlhttp.send(JSON.stringify(calculate));
}
当我将相同的标头和 JSON 文件与 Rested(OSX HTTP 客户端)一起使用时,它可以完美运行
【问题讨论】:
-
您是否尝试将发布的数据作为文件读取到服务器上?如果是这样,请参阅stackoverflow.com/questions/16223485/…
-
我不确定。我在 Java 中使用数据输出流做了同样的事情,它工作。我猜服务器只是将其读取为 JSON 流。
-
在该示例中我应该将 JSON 放在哪里?
-
用你的json替换xml
-
试过了。没用
标签: javascript ajax json http post