通过终端将POST json POST到PHP,语法错误

时间:2014-01-15 14:11:43

标签: php json curl

尝试1:

curl -X POST -H "Content-Type:application/json" -H "Accept:applica
tion/json" http://localhost/test.php -d '{"helloworld: "Hello"
}

尝试2:

curl -X POST -H "Content-Type: application/json" -d '{"username":"xyz","password":"xyz"}' http://localhost/test.php

两者都给出了输出:“语法错误”,我尝试使用双引号尝试2,等等,都给了我语法错误。

这是test.php

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

$data = json_decode($data);

echo json_last_error_msg();

任何解决方案或更简单的方法来实现这一目标?对PHP脚本的GET / POST请求。

1 个答案:

答案 0 :(得分:1)

我相信你是从Windows操作系统这样做的。您必须在JSON参数周围使用双引号而不是单引号。而你必须使用反斜杠(\)转义内部的双引号。

-d "{\"username\":\"xyz\",\"password\":\"xyz\"}"

希望这会对你有所帮助。