Buscando artículos sobre "Web Services"
11-enero-2013
admin

Crear un Web Service en PHP utilizando NUSOAP

¿Que es NuSOAP?
NuSOAP es un kit de herramientas (ToolKit) para desarrollar Web Services bajo el lenguaje PHP. Está compuesto por una serie de clases que nos harán mucho más fácil el desarrollo de Web Services. Provee soporte para el desarrollo de clientes (aquellos que consumen los Web Services) y de servidores (aquellos que los proveen). NuSOAP está basado en SOAP 1.1, WSDL 1.1 y HTTP 1.0/1.1

¿NuSOAP es el único soporte para Web Services en PHP?
No, no es el único, existen otros, pero es uno de los que están en una fase de desarrollo mucho más avanzada. Sin ir más lejos, PHP a partir de su versión 5 comienza a dar soporte para SOAP, pero aún está en fase experimental.

¿Por qué NuSOAP y no otro?
– Está en una fase madura de desarrollo.
– No necesita módulos adicionales.
– Es muy fácil su instalación y uso .

¿Cómo instalo NuSOAP?
La instalación es bastante sencilla, sólo basta ir a la pagina en sourceforge de NuSOAP http://sourceforge.net/projects/nusoap/ y bajar el archivo comprimido (es un .zip).
Lo descomprimimos en un directorio de nuestro servidor web (como puede ser /lib que es el directorio por default), y listo, ya podemos hacer uso de NuSOAP.

Ejemplo de uso

1 – Implementar la clase con contendrá las funciones que se desean utilizar. Archivo calculadora.php


    function calculadora($x, $y, $operacion){
		if($operacion == "suma")
			return $x + $y;
		else if($operacion == "suma")
			return $x + $y;
		else if($operacion == "resta")
			return $x - $y;
		else if($operacion == "multiplica")
			return $x * $y;
		else if($operacion == "divide")
			return $x / $y;
		return 0;
    }
?>

2 – Implementar el servicio web. Archivo servicio.php


	require_once('lib/nusoap.php');
	require_once('calculadora.php');
	 
	$server = new nusoap_server();
	$server->register('calculadora');
	 
	$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
	$server->service($HTTP_RAW_POST_DATA);
?>

Para probar, ver que no da errores: http://disastercode.com.es/ws/servicio.php

3 – Implementar un cliente de prueba. Archivo cliente.php


	require_once('lib/nusoap.php');
	$cliente = new nusoap_client('http://disastercode.com.es/ws/servicio.php');
	$resultado = $cliente->call('calculadora', array('x' => '3', 'y' => 4, 'operacion' => 'multiplica'));
	echo $resultado;
?>

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

Fuente
Introduction to NuSOAP

Páginas:«12

Categorias

Linkedin