WebService

Pequeno exemplo do uso de SOAP para criar um webservice

Segundo Mauro Sant'Anna <mas_mauro (arroba) hotmail (ponto) com> em seu artigo Soap e WebServices o SOAP é "um protocolo elaborado para facilitar a chamada remota de funções via Internet, permitindo que dois programas se comuniquem de uma maneira tecnicamente muito semelhante à invocação de páginas Web".

O protocolo SOAP tem diversas vantagens sobre outras maneiras de chamar funções remotamente como DCOM, CORBA ou diretamente no TCP/IP:

"

Neste exemplo utilizei o SOAPpy, uma implementação do SOAP que faz parte do projeto pywebsvcs, encontrada em http://pywebsvcs.sourceforge.net/ Fiz uma pequena calculadora para ilustrar a utilização do SOAPpy para criar um webservice e como desenvolver um cliente que faça uso da sua funcionalidade. Como é citado acima, o cliente poderia ser desenvolvido em qualquer linguagem de programação e plataforma.

CalcSOAP.py

from SOAPpy import SOAPServer

def calcula(op1,op2,operacao):
        if operacao == '+':
                return op1 + op2
        if operacao == '-':
                return op1 - op2
        if operacao == '*':
                return op1 * op2
        if operacao == '/':
                return op1 / op2
server = SOAPServer(('localhost',8081))
server.registerFunction(calcula)
server.serve_forever()

ClientCalcSOAP.py

from SOAPpy import SOAPProxy

server = SOAPProxy('http://localhost:8081/')
print '2 + 2 = ' + str(server.calcula(2,2,'+'))
print '5 - 2 = ' + str(server.calcula(5,2,'-'))
print '2 * 2 = ' + str(server.calcula(2,2,'*'))
print '6 / 2 = ' + str(server.calcula(6,2,'/'))

Com isto dá pra ter uma idéia das possibilidades que os webservices fornecem.


EltonLuisMinetto

WebService (editada pela última vez em 2008-09-26 14:06:49 por localhost)