Download docx - webservice.docx

Transcript

1 - Principe des Web ServicesLe but fondamental d'unServiceWebest de rcuprer sur un poste le rsultat d'un calcul effectu sur un autre poste.Voici quelques exemples simples: consultation de la mto consultation et rservation de trains / avions / htels rcupration de cotations boursires et calculs sur ces valeursPour des documents plus lourds: traduction de textes (BabelFish) tlchargement de carte en fournissant des coordonnes (longitude, lattitude) ou une adresse postale (Mappoint) consultation de produits AmazonOutre le dialogue en utilisant ou non un explorateur internet, les services web permettent aussi d'effectuer des traitement distants entre deux application ("Business to Business, ou encore B2B). Par exemple: un libraire (un point de vente quelconque, une usine) vend (consomme) des produits. Lorsque le stock attend un certain seuil, il faut rapprovisionner. La faon traditionnelle est de tlphoner ou d'envoyer un fax. Un peu mieux, utiliserInternet. Et, naturellement, sans aucune intervention humaine, unServiceWeb. Par exemple le logiciel de dstockage contient les seuils de rapprovisionnement, et ds que celui ci est franchi, une commande est envoye automatiquement tout systme de surveillance (un laminoir)

2 - Construction d'un Service Web2.1 - Fonctionnement des Web ServicesNous allons illustrer ceci sur un exemple trs simple de conversion montaire: conversion de Dollars en Euros (et rciproquement ventuellement).Pour effectuer ce calcul: l'utilisateur lance une application de conversion qui contient l'adresse duServiceWebde conversion, tape une valeur en Dollars et clique sur un bouton leServiceWebreoit la demande, calcule le rsultat, et renvoit la rponse l'utilisateur voit le rsulat de la conversion

Ainsi prsent, ce type de traitement est clairement du typeClient/Serveur. Voici le droulement du dialogueleServeurest lanc. Il contient un excutable (.EXE ou .DLL) contenant lesFUNCTIONs et desPROCEDUREs que desClientspeuvent invoquer. Dans notre cas une fonction qui convertit des Dollars en Euros:Functionf_euro(p_dollar:Integer):Integer

unServeurTCP/IP capable de recevoir une demandeClient, lancer l'excutable, et renvoyer la rponseVoici notreServeur l'coute desClients:

un client lance un .EXE qui contient unServiceWebClient. Il demande la conversion d'un montant en Dollar:

leServeurTCP/IP reoit la requte, et charge l'excutable qui fait la conversion:

theTCP/IPServerrenvoie la rponse:

Vous aurez remarqu que ce type d'change est trs similaire auxchanges CGIou ISAPI, la diffrence que leClientn'a pas besoin d'tre un exlorateur Web, et la requte n'est pas provoque par un clic sur un bouton