繁体   English   中英

AJAX数据未导入PHP

[英]AJAX data not coming to PHP

我有JavaScript代码可以将数据发送到PHP。

为什么我无法获取JSON数据?

xhr = new XMLHttpRequest();
var url = "http://192.168.1.4/temp.php";
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-type", "application/json");
xhr.onreadystatechange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
        var json = JSON.parse(xhr.responseText);

    }
}

var aa = [{
    "email": "hey@mail.com",
    "password": "101010"
}, {
    email: 'lo@mail.com',
    "passqword": "112"
}];
xhr.send(aa);

我创建了这样的PHP代码来获取数据:

<?php
    header('Access-Control-Allow-Origin: *'); 
    header("Content-Type: application/json");
    header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
    $v = json_decode(stripslashes(file_get_contents("php://input")));
    echo $v;
?>

stripslashes可能会破坏您提交的JSON(尽管在此示例中给出了特定的输入,但它完全无效,没有斜杠)。

json_decode是, json_decode的返回值是一个PHP数组。 该函数期望将JSON作为输入

当您回显$v ,您有一个PHP数组而不是JSON。

由于您输出的不是JSON,因此JSON.parse(xhr.responseText); 将失败。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM