Posted in

Comunicación webservice

Como comunicar/enviar un xml a una dirección web/puerto


$url = 'https://api.emplo.com/usuarios/add_NWS';

$data = file_get_contents('request.xml');

$tuCurl = curl_init();
curl_setopt($tuCurl, CURLOPT_URL,$url);
curl_setopt($tuCurl, CURLOPT_PORT , 443);
curl_setopt($tuCurl, CURLOPT_VERBOSE, 0);
curl_setopt($tuCurl, CURLOPT_HEADER, 0);
curl_setopt($tuCurl, CURLOPT_SSLVERSION, 3);
curl_setopt($tuCurl, CURLOPT_POST, 1);
curl_setopt($tuCurl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($tuCurl, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($tuCurl, CURLOPT_POSTFIELDS, $data);
curl_setopt($tuCurl, CURLOPT_HTTPHEADER, array("Content-Type: text/xml", "Content-length: ".strlen($data)));

$tuData = curl_exec($tuCurl);
if(!curl_errno($tuCurl)){
$info = curl_getinfo($tuCurl);
echo 'Took ' . $info['total_time'] . ' seconds to send a request to ' . $info['url'];
} else {
echo 'Curl error: ' . curl_error($tuCurl);
}

curl_close($tuCurl);
echo $tuData;

 

Y el xml


<?xml version='1.0' encoding='UTF-8'?>
<ATR_COM_UsersRQ xsi:schemaLocation="http://www.atrapalo.com/common ATR_COM_TratoInputRQ.xsd" PrimaryLangID="es-ES" xmls="http://www.atrapalo.com/common" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<POS>
<Source ISOCurrency="EUR" PseudoCityCode="2U8" ISOCountry="ES" AgentSine="BSIA1234PM">
<RequestorID MessagePassword="4trar0ute" ID="50000011" Type="5"/>
</Source>
</POS>
<UserInformation>
<Email><![CDATA[test1.atrapalo_222@yopmail.com]]></Email>
<Nombre><![CDATA[nombre]]></Nombre>
<Apellidos><![CDATA[apellidos]]></Apellidos>
<AnnoNacimiento><![CDATA[23]]></AnnoNacimiento>
<Cp>08100</Cp>
<IdOrigen>2001</IdOrigen>
</UserInformation>
</ATR_COM_UsersRQ>


Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *


The reCAPTCHA verification period has expired. Please reload the page.