我需要从我的js脚本向php发送一个简单的对象。
我创建了一个这样的js:
var data = JSON.stringify({
"name": "myname",
"email": "foo@bar.com",
"age": "15"
});
var http = new XMLHttpRequest();
http.open('POST', url, true);
http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
http.send(data);
http.onreadystatechange = (function(e){
if (http.readyState == 4 && http.status == 200) {
console.log(JSON.parse(http.responseText));
}
});
无法正常工作。
我的PHP脚本只是将$ _POST数组返回给js脚本。
echo json_encode($_POST);
响应很奇怪:
{"name": "myname","email": "foo@bar.com","age": "15"}: ""
服务器似乎将我的整个对象视为一个参数。
什么会导致这种行为?