使用JS XMLHttpRequest通过POST将对象传递给PHP

时间:2018-10-20 03:51:24

标签: javascript php post xmlhttprequest

我需要从我的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"}: ""

服务器似乎将我的整个对象视为一个参数。

什么会导致这种行为?

0 个答案:

没有答案