(Artigo publicado na Revista PC Master Edição Setembro/2006)
Neste artigo, falaremos sobre web services e criaremos clientes e servidores utilizando a extensão SOAP do PHP, além de criarmos um cliente para fazer consultas no site da Amazon.
Num passado recente, a troca de informações entre sistemas estava muito limitada a técnicas como por exemplo, criação de arquivos texto para exportação e importação de dados. Felizmente, a realidade mudou e as exigências também. Nos dias atuais, cada vez mais surge a necessidade de troca de informações através da internet, em tempo real, o que também trás à tona questões como compatibilidade entre programas, linguagens de programação e, principalmente, Sistemas Operacionais. Os web services possibilitam essa troca de informações através da rede, permitindo, por exemplo, que sistemas escritos em Java conversem com PHP, aplicativos Windows conversem com aplicativos Linux, sem a necessidade de escrever códigos específicos para essa compatibilização (Figura 1). O principal responsável por permitir essa compatibilidade é o XML. Antes de acontecer a troca efetiva das mensagens, cada sistema deve traduzir a sua informação para o formato XML. Antes de continuar, é importante observar que, diferente do que acontece normalmente quando navegamos na internet, onde um navegador web como Firefox, Internet Explorer, Opera,… recebe e exibe as informações de um servidor, quando falamos de web services não é necessário que um navegador esteja envolvido no processo.
Figura 1 (Abrir imagem)
SOAP, que em inglês significa Simple Object Access Protocol, é um protocolo baseado em XML para a troca de informações via internet, que você pode utilizar para criar Web Services. É um padrão definido pela W3C para a troca de informações bem como a chamada de funções em servidores remotos. A título histórico, vale mencionar que o SOAP é o sucessor do XML-RPC, de XML-Remote Procedure Call, que é um protocolo bem mais simples e relativamente com menos recursos, que utiliza XML para fazer as chamadas de funções remotas.
Podemos criar soluções com o SOAP utilizando ou não WSDL (Web Services Description Language). De forma bem sucinta, podemos definir WSDL como sendo um arquivo xml, com etensão .wsdl, que descreve como acessar um web service e quais operações serão realizadas. Assim, um programa cliente que conectar um web service pode ler o WSDL e determinar quais funções estão disponíveis no servidor. Toda essa flexibilidade e robustês do SOAP, porém, tem o seu custo: é um tanto quanto complexo e a totalidade das especificações é grande e continua a aumentar.
Neste artigo buscaremos ser objetivos, exemplificando soluções práticas sem discutir aprofundadamente questões relativas às especificações, bem como os arquivos WSDL.
A extensão SOAP do PHP fornece a possibilidade criar clientes para buscar dados em servidores como também fazer a implementação de servidores de web services. Para habilitar a extensão, é necessário compilar o PHP com a opção –enable-soap.
Pages: 1· 2· 3· 4