Derniers tutoriels de développement web
 

XML Services Web


Les services Web sont des composants d'application Web.

Les services Web peuvent être publiés, trouvés et utilisés sur le Web.

Ce tutoriel présente WSDL, SOAP, RDF et RSS.


WSDL

  • WSDL signifie Web services Description Language
  • WSDL est un langage basé sur XML pour la description des services Web.
  • WSDL est une recommandation du W3C

SAVON

  • SOAP signifie Protocole Simple Object Access
  • SOAP est un protocole basé sur XML pour accéder à des services Web.
  • SOAP est basé sur XML
  • SOAP est une recommandation du W3C

RDF

  • RDF signifie Resource Description Framework
  • RDF est un cadre pour décrire les ressources sur le web
  • RDF est écrit en XML
  • RDF est une recommandation du W3C

RSS

  • RSS signifie Really Simple Syndication
  • RSS vous permet de syndiquer votre contenu du site
  • RSS définit un moyen facile de partager et afficher les titres et le contenu
  • Les fichiers RSS peuvent être automatiquement mis à jour
  • RSS permet des vues personnalisées pour différents sites
  • RSS est écrit en XML

Qu'est-ce que vous devriez déjà savoir

Avant d'étudier les services Web, vous devriez avoir une compréhension de base de XML et XML Namespaces.

Si vous voulez étudier ces sujets d' abord, s'il vous plaît lire notre tutoriel XML .


Services Web

  • Les services Web sont des composants d'application
  • Les services Web communiquent en utilisant des protocoles ouverts
  • Les services Web sont autonomes et auto-description
  • Les services Web peuvent être découverts en utilisant UDDI
  • Les services Web peuvent être utilisés par d'autres applications
  • HTTP et XML est la base pour les services Web

L'interopérabilité a la plus haute priorité

Lorsque toutes les grandes plates-formes pourraient accéder au Web à l'aide de navigateurs Web, les différentes plates-formes ne peuvent pas interagir. Pour ces plates-formes pour travailler ensemble, Web-applications ont été développées.

Web-applications sont tout simplement des applications qui fonctionnent sur le web. Ils sont construits autour des normes de navigateur Web et peuvent être utilisés par tout navigateur sur toutes les plateformes.


Services Web prennent Web-applications au niveau suivant

En utilisant les services Web, votre application peut publier sa fonction ou un message au reste du monde.

Les services Web utilisent XML pour coder et décoder les données, et SOAP pour le transporter (using open protocols) en (using open protocols) des (using open protocols) .

Avec les services Web, le système de facturation de votre comptabilité département Win 2k serveur peut se connecter avec UNIX serveur de votre fournisseur informatique.


Web Services ont deux types d'utilisations

Reusable application-components.

Il y a des choses applications ont besoin très souvent. Alors, pourquoi faire ces maintes et maintes fois?

Les services Web peuvent offrir l'application-composants tels que: la conversion des devises, des bulletins météorologiques, ou même la traduction en langue des services.

Connect existing software.

Les services Web peuvent aider à résoudre le problème de l'interopérabilité en donnant différentes applications un moyen de lier leurs données.

Avec les services Web que vous pouvez échanger des données entre différentes applications et plates-formes différentes.

Toute demande peut avoir un composant de service Web.

Les services Web peuvent être créés indépendamment du langage de programmation.


Un service Exemple Web

Dans l'exemple suivant, nous allons utiliser ASP.NET pour créer un service Web simple qui convertit la température de Fahrenheit à Celsius, et 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

Ce document est enregistré en tant que fichier .asmx. Ceci est l'extension de fichier ASP.NET pour les services Web XML.


Exemple Explained

Note: Pour exécuter cet exemple, vous aurez besoin d' un serveur de .NET.

La première ligne de l'exemple indique que cela est un service Web, écrit en VBScript, et a le nom de la classe "TempConvert" :

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

Les lignes suivantes importent l'espace de noms "System.Web.Services" du framework .NET:

Imports System
Imports System.Web.Services

La ligne suivante définit que le "TempConvert" classe est un type de classe WebService:

Public Class TempConvert :Inherits WebService

Les prochaines étapes sont la programmation VB de base. Cette application a deux fonctions. Un pour convertir de Fahrenheit à Celsius, et l'autre pour convertir de Celsius en Fahrenheit.

La seule différence par rapport à une application normale est que cette fonction est définie comme une "WebMethod() ".

Utilisez "WebMethod() " pour convertir les fonctions de votre application dans les services 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

Ensuite, mettre fin à la classe:

end class

Publier le fichier .asmx sur un serveur avec le support de .NET, et vous aurez votre premier travail Web Service.

Regardez notre exemple de service Web


ASP.NET automatise le processus

Avec ASP.NET, vous ne devez pas écrire vos propres documents WSDL et SOAP.

Si vous regardez de plus près notre exemple de service Web, vous verrez que ASP.NET a automatiquement créé un WSDL et SOAP demande.

Utilisation du service Exemple Web

Dans la page précédente , nous avons créé un service Web .

Le FahrenheitToCelsius() fonction peut être testée ici: FahrenheitToCelsius

Le CelsiusToFahrenheit() fonction peut être testée ici: CelsiusToFahrenheit

Ces fonctions vont envoyer une réponse XML comme ceci:

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

Mettez le service Web sur votre site Web

L'utilisation d'un formulaire et la méthode HTTP POST, vous pouvez mettre le service Web sur votre site, comme ceci:

Fahrenheit en degrés Celsius:

Celsius en Fahrenheit:

Comment faire

Voici le code pour ajouter le service Web à une page 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>

Remplacer le "tempconvert.asmx" avec l'adresse de votre service web comme:

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