高级REST客户端不发送POST数据

时间:2016-06-13 19:26:28

标签: php json post advanced-rest-client

我有这个简单的代码

<?php
$json = array("status" => $_POST['name']);
header('Content-type: application/json');
echo json_encode($json);
?>

当我用Advanced REST cliend发送POST数据时,总是有一个空的$ _POST表。 enter image description here

1 个答案:

答案 0 :(得分:2)

您使用的是错误的传输方式。如果你想在$ _POST数组中读取POST数据,你必须以multipart或www形式发送它urlencoded。

要阅读请求正文,您必须使用以下代码:

$postdata = file_get_contents("php://input");

然后你可以解析JSON并将其转换为object。

如果您想使用$_POST数组从请求中读取数据,则需要将Content-Type标头设置为application/x-www-form-urlencoded并将数据发送为:

param-name=param+value

(请注意,它是网址编码)。