Foros del Web » Programando para Internet » PHP »

HTTP POST String XML

Estas en el tema de HTTP POST String XML en el foro de PHP en Foros del Web. Buenas: Estoy recibiendo en una URL un String con un XML, que me mandan con HTTP POST, el cual tengo que procesar y dar respuesta ...
  #1 (permalink)  
Antiguo 16/08/2012, 02:07
 
Fecha de Ingreso: marzo-2012
Mensajes: 9
Antigüedad: 12 años, 8 meses
Puntos: 0
HTTP POST String XML

Buenas:

Estoy recibiendo en una URL un String con un XML, que me mandan con HTTP POST, el cual tengo que procesar y dar respuesta y no lo consigo hacer correctamente.

Hago algo así:

$variable = $_POST['XML'];
$xml = simplexml_load_string($variable);

Y no consigo parsear correctamente el XML, también he probado con :
$xml = new SimpleXMLElement($variable);
pero este método da un error HTTP 500 cuando me lo intentan mandar.

La cabecera de envío es algo así.

POST recibe.php HTTP/1.1
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; ca; rv:1.8.0.11)
Gecko/20070312 Firefox/1.5.0.11
Host: 138.X.X.X:XXXX
Content-Length: 2179
Content-Type: application/x-www-form-urlencoded

*XML*=....

Muchas gracias
  #2 (permalink)  
Antiguo 16/08/2012, 09:40
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: HTTP POST String XML

¿El campo se envía así? *XML*, porque entonces tendrías que rescatarlo como $_POST['*XML*'] , también puedes usar algo como:
Código PHP:
Ver original
  1. <?php $postdata = file_get_contents("php://input"); ?>

Eso te daría como tal la cadena de POST, sin parsearla, y tu tendrías que separarla para obtener el XML.

Saludos.
  #3 (permalink)  
Antiguo 17/08/2012, 02:26
 
Fecha de Ingreso: marzo-2012
Mensajes: 9
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: HTTP POST String XML

Gracias por la respuesta!!

Ya conseguí resolverlo!

Saludos

Etiquetas: post, string, xml, variables, https
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:40.