我正在尝试读取curl请求发送的数据,但我无法读取它。 示例
curl -x post -d '{user:"test", pwd:"123"}' http://localhost/api/login/
和PHP代码
$user = $_POST['user'];
但总是我得到一个空值,如何解决这个问题?
答案 0 :(得分:2)
您可以在curl中指定帖子名称。现在你正在提交JSON,但没有名字。 (Link to curl man pages)
-d data={JSON}
然后在php中你可以加载和解码JSON:(Link to json_decode in the php manual)
$data = json_decode($_POST['data'], true);
$user = $data['user'];
如果要在不使用键/值对的情况下继续发送数据,可以保留现有的curl实现并在PHP中使用以下内容:
$data = @file_get_contents("php://input");
$json = json_decode($data, true);