我在get方法中调用了API并发送了参数。 现在我想使用POST方法调用相同的API。如何在javascript中传递参数.. 我试过了
if(XMLHttpRequestObject){
XMLHttpRequestObject.open(" POST"," Myapi / GetApplicationStatus?ApplicationNo = 10011",true);
XMLHttpRequestObject.onreadystatechange = function()
{
if (XMLHttpRequestObject.readyState == 4)
{ //alert("XML ReadyState");
if(XMLHttpRequestObject.status == 200)
{ //alert("XML status");
xmlDocument = XMLHttpRequestObject.responseXML;
displayGuest(xmlDocument);
}
}
}
XMLHttpRequestObject.send(null);
}
答案 0 :(得分:0)
发送POST请求时,您必须将参数与URL分开:
var url = "Myapi/GetApplicationStatus";
var params = "ApplicationNo=10011";
XMLHttpRequestObject.open("POST", url, true);
并注意设置一些要为请求设置的http标头
XMLHttpRequestObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
XMLHttpRequestObject.setRequestHeader("Content-length", params.length);
XMLHttpRequestObject.setRequestHeader("Connection", "close");
XMLHttpRequestObject.onreadystatechange = function() {//Call a function when the state changes.
if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
alert(XMLHttpRequestObject.responseText);
}
}
最后发送参数:
XMLHttpRequestObject.send(params);
这是来自此来源的调整后的示例,您应该检查:Send Parameter in post method
答案 1 :(得分:0)
它依赖于提供api的服务器端。如果服务器支持POST请求,那么您可以像问题一样发送参数。