urlencoded petition multiple headers example body json api http post curl

petition - POST JSON sobre CURL con autenticación básica



curl post xml (3)

No usar

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

en su lugar use

$person = $_POST[''person''];

Y si usa curl desde la línea de comandos, esta es la sintaxis para querer POSTAR datos json:

curl -d ''person={"name":"bob"}''

Estoy usando Curl desde la línea de comandos para depurar una pequeña API web en la que estoy trabajando. La API web espera autenticación básica y un objeto JSON como entrada (POST). Actualmente, esta autentificación básica funciona bien:

curl -i --user validuser:70e12a10-83c7-11e0-9d78-0800200c9a65 http://example.com/api.php

pero también quiero enviar un objeto JSON como una solicitud POST:

curl -i --user validuser:70e12a10-83c7-11e0-9d78-0800200c9a65 -X POST -d ''{"person":{"name":"bob"}}'' http://example.com/api.php

Recibo una respuesta de 400 solicitudes incorrectas con el comando anterior, ¿alguna idea sobre cómo agrupo un objeto json en esta solicitud POST?


Pruébalo con:

curl -i --user validuser:70e12a10-83c7-11e0-9d78-0800200c9a65 -H "Content-Type: application/json" -H "Accept: application/json" -X POST -d ''{"person":{"name":"bob"}}'' http://mysite.com/api.php

json= el json= bit en el contenido del cuerpo.

Alternativamente, esta publicación podría ser útil: Cómo publicar JSON en PHP con curl


curl --request POST / --url http://host/api/content/ / --header ''authorization: Basic Esdfkjhsdft4934hdfksjdf''