这似乎更像是一个PHP问题,而不是Wordpress,但是它在运行WP的服务器上,所以我将它包括在内以防万一。
我有一个像这样的JS对象:
{
"Name": "Test Names",
"Company": "Test Company",
"Email": "TestEmail@mail.com",
"Phone": "234556",
"FoundPlattarHow": "Internet",
"Interest": "Building",
"ReceiveUpdates": "1"
}
目前我只有一个空白的PHP文件,/lib/contact.php
:
<?php
echo "HELLO" . $_POST['Email'];
prettyPrint($_POST);
function prettyPrint($a) {
echo "\n";
print_r($a);
echo "\n";
}
?>
我正在使用POSTMAN(当我在浏览器中执行实际的AJAX请求时结果相同),并将上面的JS作为application/JSON
作为POST请求发送到脚本。
我得到的输出是:
HELLO
Array
(
)
所以似乎我的数据实际上都没有通过。我在这里做错了什么?!
答案 0 :(得分:2)
您使用“Content-type:application / json”标头在请求正文中发送数据。在这种情况下,您应该使用以下方法,
$data = file_get_contents("php://input");
$json = json_decode($data, true);
var_dump($json);