Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, estou tentando entender como funciona um servidor de webservice, pois acho que esse tipo de serviço para empresas é algo que pode ser muito util, ... então sai por ai googlando para ver o que descubro, qual o conceito e tals.... e o que mais se fala é em SOAP usando PHP!
De primeira achei esse link da Locaweb: http://wiki.locaweb.com.br/pt-br/Utilizando_SOAP_com_PHP
Criei la o servidor e o cliente, rodei e retornou o "Meu nome Meu sobrenome", dai pensei grandes coisa!
Parti googlar mais e achi esse link com um exemplo suuuuper básico: http://runnable.com/UmqmRWl_VPc8AACO/how-to-create-a-basic-soap-server-for-soapserver-and-php
Não rodei local pois esse site executa o código pra mim, e ai vi que funciona!
Minhas duvidas!
1 - PQ no exemplo da locaweb tem um tipo de xml que parece não servir pra nada, sendo que no exemplo do runnable.com ele tem um exemplo que faz a mesma coisa de forma muito mais simples e sem o xml ?!!!
2 - Como posso passar dados para o servidor para eles serem usados nas consultas das funções e poder fazer algum tipo de autenticação, para evitar que qq zé mané acesse os dados ?
3 - Os dados retornados podem ser em qq formato (xml, string, array, json...) para o cliente trabalhar com o formato que ele vai receber ??
Valeu!
é um WSDL (Web Service Description Language). Esse arquivo descreve todo o funcionamento do webservice, desde dados de entrada, dados de saídas, faults/exceptions e endpoints (aonde é executado o webservice). A descrição é de forma universal, serve para todos os WebServices SOAP indiferente a linguagem.
Em PHP há a opção de criar um webservice sem sua descrição (WSDL), mas só funciona para PHP. Significa que somente um cliente em PHP (instanciado através da classe SoapClient) conseguirá consumí-lo. Já com o WSDL, é universal.
Existen algumas maneiras, tal como autenticação HTTPS ou exigir autenticação junto com a função (o WS dos correios exige a autenticação a cada requisição). O input/output pode ser codificado, o que deve garantir o sigilo dos dados. Se não achar suficiente, utilize conexões HTTPS e exija autenticação;
No link abaixo pode verificar a lista de todos os tipos permitidos em um WebService:
http://www.w3.org/TR/xmlschema-2/#defn-coss
Entretanto, você pode criar tipos complexos, tal qual uma classe, utilizando os tipos definidos no XMLSchema. O tipo complexo pode ser mapeado para uma classe, tanto pelo client como pelo server.
WebService é tendencia e não deve ser deixada de lado. Não só a opção SOAP, mas como também o REST. Estude ambos, cada um possui seus pontos fracos e fortes. O SOAP trabalha em cima do protocolo HTTP, o REST usa os métodos do protocolo HTTP.