Sistema bancario mexicano
En la actualidad el término servicios web (web services) forma parte esencial dentro del mundo del desarrollo de software, ya se ha escrito mucho sobre que son y cuales tecnologías usan, por lo tanto la razón de ser de este artículo es realizar una implementación real de servicios web con una tecnología tan importante como lo es el PHP, hablando un poco también de los fundamentos teóricos pero sin ahondar demasiado en el tema.
Para lograr la implementación de servicios web en PHP se usó las tecnologías XML-RPC y SOAP sobre las cuales se implementaron servidores y clientes consumidores de servicios web.
Servicios Web
Los servicios web han venido a revolucionar el mundo de la programación, nos ofrecen …ver más…
xmlrpcresp.- Esta clase se usa para proveer las respuestas a las peticiones XML-RPC. Un método en el servidor construirá el xmlrpcresp y regresará su valor. Este valor es el que se regresa al invocar el método send de la clase xmlrpc_client. Existen dos formas de crear esta clase:
La primera instancia se usa cuando la ejecución ocurrió sin excepciones, $valor_xmlrpc es un valor xmlrpcval con el resultado de la ejecución del método.
El segundo constructor se usa en caso de falla, $NoError y $err son valores para indicarnos lo que estuvo mal. Los métodos más comunes de esta clase son: faultCode: Regresa el código del error. Un valor de 0 indica éxito, cualquier otro valor indica falla. faultString: Regresa la descripción del error. value: value(); ?>
Regresa un objeto xmlrpcval que contiene el valor regresado por el servidor. Si el faultCode no es 0 entonces el valor regresado por este método no debe ser usado (puede que no sea un objeto incluso).
Ahora que ya conocemos el funcionamiento de las clases que crean el servidor y forman las respuestas vamos a crear nuestro servidor XML-RPC que contendrá el servicio web de buscar el título de un libro enviando su ISBN con el que hemos trabajado. getParam(0); // Vemos si es del tipo correcto if (isset($ParIsbn) && ($ParIsbn->scalartyp()=="int")) { // Obtenemos el valor numerico $isbn=$ParIsbn->scalarval(); // Buscamos el libro switch($isbn) { case 1: