在没有工作的XMLHttpRequest中,POST工作正常

时间:2012-08-24 06:27:37

标签: javascript android cordova xmlhttprequest

我的GET请求正常工作并以xml身份响应。 https://mydomain.com/mypage.php?id=123&nm=ak_dhara 注意:我们的php页面位于https。

但是POST不起作用。

xhttp.open("POST"," https://mydomain.com/mypage.php",true);
xhttp.setRequestHeader("Content-type","application/xhtml+xml");
xhttp.send("id=123&nm=ak_dhara");

有任何建议吗?

1 个答案:

答案 0 :(得分:1)

xhttp.setRequestHeader("Content-type","application/xhtml+xml")错了。如果您想要求XHTML内容,那么正确的请求标题名称为Accept。如果您要确定要发送的内容类型,那么您要发送application/x-www-form-urlencoded。尊重标头的服务器会尝试读取您发送的数据id=123&nm=ak_dhara,作为使用application/xhtml+xml格式编码的特殊请求;没有PHP服务器知道如何做到这一点。它可能适用于某些浏览器,因为它们知道这不是有效的内容类型,并且它们会忽略该标头并发送正确的值。

顺便说一句,application/x-www-form-urlencoded是默认值,因此您无需明确设置它。