[英]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.