我正在尝试从HTML页面向本地主机上运行的Django服务器发出JSON数据的POST请求。每当我按下按钮进行POST时,都会导致“ OPTIONS”而不是“ POST”
我尝试更改访问控制的标头,但无济于事。
这是我的javascript方法。
function doPost() {
document.getElementById("confirmation").innerHTML = "Your order is being made.";
var xhr = new XMLHttpRequest();
var url = "http://127.0.0.1:8080/app/newitem/";
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Access-Control-Allow-Origin", "*");
xhr.setRequestHeader("Access-Control-Max-Age", "600")
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
var json = JSON.parse(xhr.responseText);
}
};
var data = JSON.stringify({"name": "Sid", "email": "testemail@testabc.com", "price": "44.99"});
xhr.send(data);
}
调用此函数时,我希望Django服务器生成一条消息,指示发生“ POST”,而不是
[20/Sep/2019 21:36:45] "OPTIONS /app/newitem/ HTTP/1.1" 200 169