tengo dudas acerca de como es el proceso de comunicacion con un web service
necesito comunicarme con servidor mediante xml, tengo los documentos xml, buscando en la web encontre que la comunicacion debe hacerse mediante algun protocolo, p.e. SOAP, para php existe una libreria nuSOAP, en los ejemplos se hace la comunicacion pero no utilizan los archivos XML:
Código PHP:
require_once('../lib/nusoap.php');
$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';
$client = new soapclient("http://soap.amazon.com/onca/soap2", false,
$proxyhost, $proxyport, $proxyusername, $proxypassword);
$err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
}
// This is an archaic parameter list
$params = array(
'manufacturer' => "O'Reilly",
'page' => '1',
'mode' => 'books',
'tag' => 'trachtenberg-20',
'type' => 'lite',
'devtag' => 'D35PWRR0R0URC3',
'sort' => '+title'
);
$result = $client->call('ManufacturerSearchRequest', $params, 'http://soap.amazon.com', 'http://soap.amazon.com');
if ($client->fault) {
echo '<h2>Fault (This is expected)</h2><pre>'; print_r($result); echo '</pre>';
} else {
$err = $client->getError();
if ($err) {
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>';
}
}
echo '<h2>Request</h2><pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>';
echo '<h2>Response</h2><pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>';
echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>';
gracias