14-enero-2013
admin

Crear un Web Service con WSDL en PHP utilizando NUSOAP

1 – Implementar el servicio web. Archivo servicioWsdl.php


	require_once("lib/nusoap.php");
	$ns="http://disastercode.com.es/ws/nusoap";
		
	$server = new soap_server();
	$server->configureWSDL('CalculadoraWSDL',$ns);
	$server->wsdl->schemaTargetNamespace=$ns;
	$server->register('getNombre',array('dni' => 'xsd:string'),array('return' => 'xsd:string'),$ns);
		
	function getNombre($aux){
		if($aux == '99999999N')
			return new soapval('return','xsd:string','Manolito Gafotas');
		return new soapval('return','xsd:string','');
	}
	
	$server->service($HTTP_RAW_POST_DATA);
?>

Comprobar que el wsdl se crea correctamente: http://disastercode.com.es/ws/servicioWsdl.php?wsdl

2 – Implementar un cliente de prueba. Archivo clienteWsdl.php


	require_once('lib/nusoap.php'); 

	$wsdl="http://disastercode.com.es/ws/servicioWsdl.php?wsdl";
	//$client=new soapclient($wsdl, 'wsdl'); //esto no funcionará si el servidor tiene habilitada la extensión SOAP para PHP
	$client=new nusoap_client($wsdl, 'wsdl');

	$param=array( 'dni'=>'99999999N' ); 
	echo "DNI: 99999999N; ".$client->call('getNombre', $param)."
"; $param=array( 'dni'=>'45654654P' ); echo "DNI: 45654654P; ".$client->call('getNombre', $param); ?>

Para probarlo: http://disastercode.com.es/ws/clienteWsdl.php

Fuente

Dejar un comentario

Categorias

Linkedin