Comment : accéder aux services Web XML à partir d'un navigateur

Cette rubrique est spécifique à une technologie existante. Les services Web XML et les clients du service Web XML doivent à présent être créés à l'aide de Windows Communication Foundation.

Après avoir publié un service Web créé à l'aide d'ASP.NET, vous pouvez tester ses fonctionnalités en utilisant un navigateur pour l'appeler via HTTP-GET ou HTTP-POST. Accédez à son fichier .asmx dans un navigateur puis cliquez sur les liens hypertexte menant aux méthodes de service Web ou accédez directement à chaque méthode en ajoutant une chaîne de requête à l'URL .asmx.

45fez2a8.note(fr-fr,VS.100).gifRemarque :
Par défaut, un service Web créé à l'aide d'ASP.NET peut prendre en charge plusieurs protocoles, y compris SOAP via HTTP et les implémentations de HTTP-GET et HTTP-POST lorsque du XML non-SOAP est retourné dans la réponse.

Pour tester un service Web dans un navigateur à l'aide de HTTP-GET

  1. Déployez votre service Web sur un serveur Web. Pour plus d'informations, consultez Publication et déploiement des services Web XML.

  2. Accédez à un navigateur Web et entrez l'URL de votre service Web dans la barre d'adresses, au format suivant :

    https://servername/apppath/webservicename.asmx
    

    Partie de chemin d'accès Valeur

    servername

    Le nom du serveur sur lequel votre service Web a été déployé.

    Apppath

    Le nom de votre répertoire virtuel et le reste du chemin d'accès de l'application Web.

    webservicename.asmx

    Nom du fichier .asmx du service Web.

    Par exemple, supposons que vous ayez publié un service Web nommé StockServices. En cas de publication, l'URL de base de ce service est http://<servername>/apppath/StockServices.asmx. Vous pouvez tester ce service en saisissant cette demande HTTP-GET dans la barre d'adresses du navigateur :

    http://<servername>/apppath/StockServices.asmx
    

    Le serveur, en réponse à cette demande, affiche la page de description HTML du service Web.

  3. La page de description HTML du service Web vous montre toutes les méthodes de service Web prises en charge par un service Web particulier. Créez un lien vers la méthode de service Web désirée et entrez les paramètres nécessaires pour tester la méthode et consulter la réponse XML.

Pour tester une méthode de service Web directement dans un navigateur à l'aide de HTTP-GET

  1. Déployez votre service Web sur un serveur Web. Pour plus d'informations, consultez Publication et déploiement des services Web XML.

  2. Ouvrez un navigateur Web et entrez l'URL de votre méthode de service Web dans la barre d'adresses, au format suivant :

    https://servername/vdir/webservicename.asmx/Methodname?parameter=value
    

    Paramètre Valeur

    servername

    Le nom du serveur sur lequel votre service Web est déployé.

    Apppath

    Le nom de votre répertoire virtuel et le reste du chemin d'accès de l'application Web.

    webservicename.asmx

    Nom du fichier .asmx du service Web.

    Methodname

    Nom d'une méthode publique exposée par votre service Web. Si ce paramètre n'est pas renseigné, la page de description du service Web répertoriant chaque méthode publique disponible dans le fichier .asmx est affichée. (facultatif)

    parameter

    Nom et valeur de paramètre appropriés pour tous les paramètres requis par votre méthode. Si ce paramètre n'est pas renseigné, la page de description du service Web répertoriant chaque méthode publique disponible dans le fichier .asmx est affichée. (facultatif)

    45fez2a8.note(fr-fr,VS.100).gifRemarque :
    Dans cette syntaxe, le nom de la méthode de service Web est sensible à la casse, mais le nom du serveur, du projet et du service Web ne l'est pas.

    Par exemple, supposons que le service Web StockServices de la procédure précédente contienne une méthode de service Web appelée GetQuote ; la méthode de service Web accepte comme paramètre un symbole de cotation et retourne le prix sous forme de nombre à virgule flottante double précision. Entrez la demande HTTP-GET suivante dans la barre d'adresses du navigateur pour tester cette méthode :

    http://<servername>/apppath/StockServices.asmx/GetStockQuote?tickerName=MSFT

  3. Le serveur envoie une réponse qui contient un document XML, affiché dans le navigateur. Pour l'exemple GetQuote, le XML a le prix actuel de l'article demandé. Le résultat peut se présenter de la manière suivante :

    <?xml version="1.0" ?>

    <double>74.5</double>

Pour tester un service Web dans un navigateur à l'aide de HTTP-POST

  1. Déployez votre service Web sur un serveur Web. Pour plus d'informations, consultez Publication et déploiement des services Web XML. Cette procédure utilise à titre d'exemple le service Web suivant, déployé sous la forme d'un fichier math.asmx accessible depuis la racine virtuelle d'un site https://www.contoso.com :

    <%@ WebService Language="C#" Class="Math" %>
    using System.Web.Services;
    public class Math : WebService {
         [ WebMethod ]
         public int Add(int num1, int num2) {
              return num1+num2;
         }
    
         [ WebMethod ]
         public int Subtract(int num1, int num2) {
              return num1-num2;
         }
    }
    
    <%@ WebService Language="VB" Class="Math" %>
    Imports System.Web.Services
    
    Public Class Math
        Inherits WebService
    
        <WebMethod> _
        Public Function Add(num1 As Integer, num2 As Integer) As Integer
            Return num1 + num2
        End Function    
    
        <WebMethod> _
        Public Function Subtract(num1 As Integer, num2 As Integer) As Integer
            Return num1 - num2
        End Function
    End Class
    
  2. Créez une page HTML avec un formulaire dont l'attribut method a la valeur POST. Utilisez le format suivant :

       <form method=POST action='https://www.contoso.com/math.asmx/Subtract'>
           <input type="text" size="5" name='num1'\"></td> -
           <input type="text" size="5" name='num2'\"></td> =
           <input type=submit value="Subtract"> </td>
       </form>
    

    Paramètre Valeur

    method

    POST. Si vous souhaitez tester votre service Web à l'aide de HTTP-POST, utilisez POST.

    action

    URL de la méthode de service Web. Dans l'exemple précédent, math.asmx est le service Web et Subtract est la méthode de service Web.

    type="text"

    Pour chaque paramètre de la méthode de service Web, créez des balises input dont l'attribut de type a la valeur "text". Cela vous permet de saisir une valeur de paramètre dans la commande de saisie de texte.

    name='num1'

    Nom du paramètre de méthode de service Web. Ajoutez autant de commandes de saisie de texte dans le formulaire qu'il y a de paramètres dans la méthode de service Web. Par exemple, si une méthode de service Web a trois paramètres, trois commandes de saisie de texte sont exigées et l'attribut name de chacune d'entre elles doit avoir comme valeur le nom du paramètre.

    type=submit

    Ajoutez un bouton envoyer pour pouvoir publier les données vers la méthode de service Web.

  3. Ouvrez un navigateur Web et entrez l'URL du document HTML que vous avez créé à l'étape précédente.

    Le document HTML créé à l'étape précédente est affiché.

  4. Entrez les valeurs appropriées pour la méthode de service Web dans les zones de texte et cliquez sur le bouton envoyer.

    Par exemple, si vous avez entré 6, puis 3 dans les deux zones de texte pour la méthode de service Web Subtract de l'exemple, le résultat suivant est retourné :

    <?xml version="1.0" ?> 
    <int xmlns="http://tempuri.org/">3</int>
    

Voir aussi

Tâches

Comment : explorer les services Web XML existants créés à l'aide d'ASP.NET
Comment : accéder aux services Web XML à partir d'un navigateur

Concepts

Création de clients de service Web XML
Découverte des services Web

Autres ressources

Création de clients pour les services Web XML