que estoy tratando de contenido posterior JSON a un extremo REST a distancia, sin embargo, el valor de 'contenido' parece que está vacío en la entrega. Todos los demás encabezados, etc. se reciben correctamente, y el servicio web prueba satisfactoriamente con un cliente de prueba basado en el navegador.PHP - Desplazamiento a través de JSON file_get_contents
¿Hay un problema con mi sintaxis debajo de donde puedo especificar el campo 'contenido'?
$data = array("username" => "duser", "firstname" => "Demo", "surname" => "User", "email" => "[email protected]");
$data_string = json_encode($data);
$result = file_get_contents('http://test.com/api/user/create', null, stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => array('Content-Type: application/json'."\r\n"
. 'Authorization: username:key'."\r\n"
. 'Content-Length: ' . strlen($data_string) . "\r\n"),
'content' => $data_string)
)
));
echo $result;
Gracias ¡Esto funcionó muy bien! – Ben
En caso de que alguien se topa con el problema de que la postdata no está codificado correctamente (cada tecla del diccionario tiene una "amp;" al principio): Cambie la tercera línea a $ Postdatum = http_build_query ($ data, ' ',' &'); – Philipp