tutoriais mais recente desenvolvimento web
 

XML Serviços web


Os serviços Web são componentes de aplicativos web.

serviços da Web podem ser publicadas, encontrado e utilizado na Web.

Este tutorial apresenta WSDL, SOAP, RDF, e RSS.


WSDL

  • WSDL significa Web Services Description Language
  • WSDL é uma linguagem baseada em XML para descrever serviços Web.
  • WSDL é uma recomendação W3C

SABONETE

  • SOAP significa Simple Object Access Protocol
  • SOAP é um protocolo baseado em XML para acessar Web Services.
  • SOAP é baseado em XML
  • SOAP é uma recomendação W3C

RDF

  • RDF significa Resource Description Framework
  • RDF é uma estrutura para descrever recursos na web
  • RDF é escrito em XML
  • RDF é uma Recomendação W3C

RSS

  • RSS significa Really Simple Syndication
  • RSS permite que você distribuir o seu conteúdo do site
  • RSS define uma maneira fácil de compartilhar e exibir manchetes e conteúdo
  • arquivos RSS pode ser atualizado automaticamente
  • RSS permite que as vistas personalizadas para diferentes locais
  • RSS é escrito em XML

O que você deve já saber

Antes de estudar serviços web você deve ter um entendimento básico de XML e XML Namespaces.

Se você quer estudar estes assuntos primeiro, leia o nosso Tutorial XML .


Serviços web

  • Os serviços Web são componentes de aplicação
  • serviços web comunicam através de protocolos abertos
  • serviços Web são auto-suficientes e auto-descrevendo
  • serviços Web pode ser descoberto usando UDDI
  • serviços da Web podem ser usados ​​por outros aplicativos
  • HTTP e XML é a base para serviços Web

A interoperabilidade tem mais alta prioridade

Quando todas as principais plataformas podem acessar a Web usando navegadores da Web, plataformas diferentes não poderiam interagir. Para essas plataformas para trabalhar em conjunto, web-aplicativos foram desenvolvidos.

Aplicações web são simplesmente aplicações que rodam na web. Estes são construídos em torno dos padrões de navegador Web e pode ser usado por qualquer navegador em qualquer plataforma.


Web Services levar aplicações web para o próximo nível

Ao utilizar os serviços da Web, o aplicativo pode publicar a sua função ou mensagem para o resto do mundo.

Serviços da Web usam XML para codificar e decodificar dados e SOAP para transportá-lo (using open protocols) .

Com os serviços da Web, sistema de faturamento do servidor Win 2k do seu departamento de contabilidade pode se conectar com o servidor UNIX do seu fornecedor de TI.


Web Services têm dois tipos de usos

Reusable application-components.

Há coisas aplicações necessitam muito frequentemente. Então, por que torná-los uma e outra vez?

serviços da Web podem oferecer aplicativos de componentes como: conversão de moeda, boletins meteorológicos, ou mesmo de tradução de idiomas como serviços.

Connect existing software.

serviços da Web podem ajudar a resolver o problema de interoperabilidade, dando diferentes aplicações uma maneira de vincular os seus dados.

Com os serviços da Web que você pode trocar dados entre diferentes aplicações e plataformas diferentes.

Qualquer aplicação pode ter um componente de serviço Web.

Web Services podem ser criados independentemente da linguagem de programação.


Um exemplo de serviço Web

No exemplo a seguir, vamos utilizar ASP.NET para criar um serviço da Web simples que converte a temperatura de Fahrenheit para Celsius, e vice-versa:

<%@ WebService Language="VBScript" Class="TempConvert" %>

Imports System
Imports System.Web.Services

Public Class TempConvert :Inherits WebService

<WebMethod()> Public Function FahrenheitToCelsius
(ByVal Fahrenheit As String) As String
  dim fahr
  fahr=trim(replace(Fahrenheit,",","."))
  if fahr="" or IsNumeric(fahr)=false then return "Error"
  return ((((fahr) - 32) / 9) * 5)
end function

<WebMethod()> Public Function CelsiusToFahrenheit
(ByVal Celsius As String) As String
  dim cel
  cel=trim(replace(Celsius,",","."))
  if cel="" or IsNumeric(cel)=false then return "Error"
  return ((((cel) * 9) / 5) + 32)
end function

end class

Este documento é salvo como um arquivo .asmx. Esta é a extensão de arquivo ASP.NET para XML Web Services.


exemplo Explicado

Note: Para executar este exemplo, você vai precisar de um servidor .NET.

A primeira linha no exemplo afirma que este é um serviço Web, escrito em VBScript, e tem o nome da classe "TempConvert" :

<%@ WebService Language="VBScript" Class="TempConvert" %>

As próximas linhas importar o namespace "System.Web.Services" do framework .NET:

Imports System
Imports System.Web.Services

A próxima linha define que o "TempConvert" classe é um tipo de classe WebService:

Public Class TempConvert :Inherits WebService

Os próximos passos são programação básica VB. Esta aplicação tem duas funções. Uma converter de Fahrenheit para Celsius, e um para converter de Celsius para Fahrenheit.

A única diferença relativamente a um funcionamento normal, é que esta função é definida como uma "WebMethod() ".

Use "WebMethod() " para converter as funções na sua aplicação em serviços web:

<WebMethod()> Public Function FahrenheitToCelsius
(ByVal Fahrenheit As String) As String
  dim fahr
  fahr=trim(replace(Fahrenheit,",","."))
  if fahr="" or IsNumeric(fahr)=false then return "Error"
  return ((((fahr) - 32) / 9) * 5)
end function

<WebMethod()> Public Function CelsiusToFahrenheit
(ByVal Celsius As String) As String
  dim cel
  cel=trim(replace(Celsius,",","."))
  if cel="" or IsNumeric(cel)=false then return "Error"
  return ((((cel) * 9) / 5) + 32)
end function

Em seguida, terminar a classe:

end class

Publicar o arquivo .asmx em um servidor com suporte .NET, e você terá o seu primeiro serviço Web trabalhando.

Olhe para o nosso exemplo de serviço Web


ASP.NET automatiza o processo

Com ASP.NET, você não tem que escrever seus próprios documentos WSDL e SOAP.

Se você olhar mais de perto o nosso exemplo de serviço da Web, você verá que ASP.NET criou automaticamente um WSDL e SABÃO pedido.

Usando o exemplo de serviço Web

Na página anterior, criamos um serviço Web .

O FahrenheitToCelsius() função pode ser testado aqui: FahrenheitToCelsius

O CelsiusToFahrenheit() função pode ser testado aqui: CelsiusToFahrenheit

Estas funções irá enviar uma resposta XML como este:

<?xml version="1.0" encoding="utf-8" ?>
<string xmlns="http://tempuri.org/">38</string>

Coloque o serviço da Web em seu Web Site

Usando um formulário e o método HTTP POST, você pode colocar o serviço da web em seu site, como este:

Fahrenheit para Celsius:

Celsius a Fahrenheit:

Como fazer isso

Aqui está o código para adicionar o serviço da Web para uma página web:

<form action='tempconvert.asmx/FahrenheitToCelsius'
method="post" target="_blank">
<table>
  <tr>
    <td>Fahrenheit to Celsius:</td>
    <td>
    <input class="frmInput" type="text" size="30" name="Fahrenheit">
    </td>
  </tr>
  <tr>
    <td></td>
    <td align="right">
     <input type="submit" value="Submit" class="button">
     </td>
  </tr>
</table>
</form>

<form action='tempconvert.asmx/CelsiusToFahrenheit'
method="post" target="_blank">
<table>
  <tr>
    <td>Celsius to Fahrenheit:</td>
    <td>
    <input class="frmInput" type="text" size="30" name="Celsius">
    </td>
  </tr>
  <tr>
    <td></td>
    <td align="right">
    <input type="submit" value="Submit" class="button">
    </td>
  </tr>
</table>
</form>

Substitua o "tempconvert.asmx" com o endereço do seu serviço web como:

http://www.example.com/xml/tempconvert.asmx