Vous consultez la documentation Apigee Edge.
Accédez à la
documentation**Apigee X**. info
Points abordés
Dans ce tutoriel, vous allez apprendre à effectuer les opérations suivantes :
- Générer un proxy d'API Edge à partir d'un fichier WSDL.
- Identifier la différence entre un type de proxy SOAP RESTful et un proxy SOAP direct.
Dans ce tutoriel, vous allez apprendre à placer un proxy d'API Edge en amont d'un service Web basé sur le protocole SOAP.
Ce tutoriel explique comment générer une nouvelle API RESTful en amont de votre service basé sur SOAP. Bien que cela ne soit pas décrit en détail ici, vous pouvez également générer un proxy direct qui accepte une charge utile SOAP et la transmet au service de backend.
Ce dont vous avez besoin
- Un compte Apigee Edge. Si vous n'en avez pas encore, vous pouvez vous inscrire à l'aide des instructions de la section Créer un compte Apigee Edge.
Créer le proxy
Ici, vous allez demander à Edge de générer le proxy qui se trouvera en amont d'un service SOAP. Il existe deux types de proxys d'API SOAP :
- Le type de proxyREST-SOAP-REST génère une nouvelle API RESTful avec une couche de traduction vers SOAP. Les clients l'appellent comme ils le feraient pour d'autres services RESTful, en transmettant les paramètres de requête nécessaires au service de backend. Edge traduit cela dans la charge utile SOAP attendue par le service.
- Le type de proxy direct permet aux clients de simplement transmettre une charge utile SOAP. Cela permet aux appels de service SOAP de bénéficier des fonctionnalités de gestion d'Edge.
Edge
Pour faire transiter un service SOAP à travers un proxy à l'aide de l'interface utilisateur Edge :
- Connectez-vous à apigee.com/edge.
- Sélectionnez Développer > Proxys API dans la barre de navigation de gauche.
- Cliquez sur +Proxy.
- Cliquez sur Service SOAP.
- Sur la page d'informations du proxy, saisissez les informations suivantes :
Champ Description Source WSDL Sélectionnez URL.
Copiez et collez l'URL WSLD suivante dans le champ Saisir l'URL :
https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl
Cliquez sur Valider.
Apigee Edge récupère le fichier WSDL et le lit pour découvrir la liste des opérations compatibles avec le service SOAP.
Nom Ne modifiez aucune valeur :
delayedstockquoteIl s'agit du nom du proxy d'API que vous créez.
Chemin de base Ne modifiez aucune valeur : /delayedstockquoteDescription Vous pouvez ajouter une description, par exemple : Proxy d'API WSDL de cours de bourse. - Cliquez sur Suivant.
- Sur la page Règles communes, sous Sécurité : Autorisation, sélectionnez Accès libre (aucune autorisation).
- Cliquez sur Suivant.
- Sur la page Opérations WSDL, sélectionnez REST à SOAP à REST.
Une fois le type de proxy sélectionné, Edge affiche la liste des opérations pour lesquelles il générera des chemins d'API REST. Cette liste vous permet de sélectionner parmi les opérations trouvées dans le WSDL (si vous recherchez un ensemble particulier que vous recherchez). Notez que le tableau affiche également les ressources qu'un client REST peut utiliser pour appeler le service SOAP de backend.
Ne modifiez aucune autre sélection sur la page.
- Cliquez sur Suivant.
- Acceptez les valeurs par défaut de l'hôte virtuel en cliquant sur Suivant.
- Sur la page Résumé , sous Déploiement facultatif, cliquez sur Tester , puis sur Créer et déployer.
Edge génère un proxy d'API RESTful et le déploie dans l'environnement
test. À partir du WSDL, il détermine les opérations compatibles avec le service, les paramètres d'entrée, etc. Edge suggère la méthode HTTP à utiliser pour chaque opération. En règle générale, Edge traduit les opérations en requêtes GET, qui ont l'avantage d'être mises en cache. Edge configure également le point de terminaison cible de backend, qui peut varier en fonction de l'opération SOAP.Sauf si vous personnalisez le nouveau proxy d'API (ce qui n'est pas le cas dans ce tutoriel), c'est tout ce qu'il y a à faire. Vous pouvez passer au test du nouveau proxy d'API.
Classic Edge (Cloud privé)
Pour faire transiter un service SOAP à travers un proxy à l'aide de l'interface utilisateur Classic Edge :
- Connectez-vous à
http://ms-ip:9000, où ms-ip est l' adresse IP ou le nom DNS du nœud de serveur de gestion. - Sélectionnez API > Proxys d'API dans la barre de navigation supérieure.
- Cliquez sur + Proxy d'API.
- Cliquez sur Service SOAP.
- Sur la page d'informations du proxy, saisissez les informations suivantes :
Champ Description WSDL Sélectionnez Exemple d'URL.
Ensuite, sélectionnez l'une de ces options :
...delayedstockquote.asmx?WSDLCliquez sur Valider.
Apigee Edge récupère le fichier WSDL et le lit pour découvrir la liste des opérations compatibles avec le service SOAP.
Proxy Name (Nom du proxy) Saisissez :
delayedstockquoteIl s'agit du nom du proxy que vous créez.
Proxy Base Path (Chemin de base du proxy) et Description Ne modifiez aucune valeur. - Cliquez sur Suivant.
- Sur la page WSDL, effectuez les sélections suivantes :
Dans ce champ procédez comme suit Type de proxy d'API Sélectionnez REST à SOAP à REST.
Une fois le type de proxy sélectionné, Edge affiche la liste des opérations pour lesquelles il générera des chemins d'API REST, comme illustré ici. Cette liste vous permet de sélectionner parmi les opérations trouvées dans le WSDL (si vous recherchez un ensemble particulier ). Notez que le tableau affiche également les ressources qu'un client REST peut utiliser pour appeler le service SOAP de backend.
Pour le moment, laissez simplement le premier ensemble d'opérations sélectionné.
Type de port : DelayedStockQuoteSoap Sélectionnez les trois opérations WSDL. Ne modifiez pas les autres paramètres.
- Cliquez sur Suivant.
- Sur la page Sécurité, sélectionnez Accès libre (aucune).
- Cliquez sur Suivant.
- Acceptez les valeurs par défaut de l'hôte virtuel, puis cliquez sur Suivant.
- Sur la page Créer, acceptez les valeurs par défaut et cliquez sur Créer et déployer pour
qu'Edge commence à générer le proxy.
Edge génère un proxy d'API RESTful. À partir du WSDL, il détermine les opérations compatibles avec le service, les paramètres d'entrée, etc. Edge suggère la méthode HTTP à utiliser pour chaque opération. En règle générale, Edge traduit les opérations en requêtes GET, qui ont l'avantage d'être mises en cache. Edge configure également le point de terminaison cible de backend, qui peut varier en fonction de l'opération SOAP.
Sauf si vous personnalisez le nouveau proxy (ce qui n'est pas le cas dans ce tutoriel), c'est tout ce qu'il y a à faire. Vous pouvez passer au test du nouveau proxy.
Tester le proxy
Pour essayer le proxy que vous avez créé, ouvrez une invite de commande et utilisez cURL. Saisissez la commande ci-dessous, où :
- ORG est le nom de l'organisation Edge dans laquelle vous avez créé le proxy.
- ENV est l'environnement dans lequel le proxy est déployé.
- DOMAIN correspond à l'instance Edge que vous utilisez.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"Par exemple, si votre organisation est docfood, que l'environnement est
test et que vous utilisez le cloud d'entreprise Edge, vous exécuterez une commande comme
celle-ci :
curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"
Si vous avez saisi GOOG pour le paramètre de requête StockSymbol, vous devriez obtenir
le cours actuel de l'action de classe C d'Alphabet Inc. Exemple :
{
"GetQuoteResponse":{
"GetQuoteResult":{
"StockSymbol":"GOOG",
"LastTradeAmount":819.55,
"LastTradeDateTime":"2017-02-13T14:33:00",
"StockChange":5.88,
"OpenAmount":816.0,
"DayHigh":820.96,
"DayLow":815.49,
"StockVolume":785064,
"PrevCls":813.67,
"ChangePercent":"+0.72%",
"FiftyTwoWeekRange":"663.28 - 841.95",
"EarnPerShare":27.88,
"PE":29.4,
"CompanyName":"Alphabet Inc.",
"QuoteError":false
}
}
}Obtenir la spécification OpenAPI générée automatiquement
Lorsque vous faites transiter un service SOAP à travers un proxy à l'aide de "REST à SOAP à REST", Edge génère automatiquement une spécification OpenAPI. Vous pouvez utiliser la spécification OpenAPI pour générer la documentation de l'API.
Pour obtenir la spécification OpenAPI, accédez simplement à cette URL :
curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.jsonPour aller plus loin : comment savoir quelles ressources, quels verbes et quels paramètres de requête utiliser ?
Dans l'appel d'API de test, vous avez utilisé une ressource et des paramètres de requête spécifiques dans votre appel cURL au service SOAP de backend. Mais comment faire pour le savoir par vous-même ?
Ressource et verbe
Dans l'assistant de proxy d'API, lorsque vous avez créé le proxy, vous avez vu comment les opérations SOAP seraient mappées sur les verbes et les ressources de l'API. Mais si vous ne les avez pas notés, voici comment les trouver une fois le proxy créé.
Dans l'onglet Développer du proxy d'API, dans le volet de navigation de gauche, vous verrez une
liste de flux sous Points de terminaison proxy. Cliquez sur le flux qui vous intéresse. Par exemple,
le GetQuote flux est un bon candidat. Affichez ensuite le code XML dans le volet Code,
qui affiche le chemin de ressource et le verbe du flux dans l'élément <Condition>:
/quote et GET.

Paramètres de requête
Le flux GetQuote étant sélectionné, cliquez sur la première règle dans la vue graphique
du flux. Il doit s'agir d'une règle ExtractVariables qui capture les paramètres de requête qui doivent être transmis : StockSymbol et LicenseKey. (Si vous effectuez une recherche Web
pour le service SOAP, vous saurez ce qu'il faut transmettre pour LicenseKey.)

Les paramètres de requête capturés sont enregistrés en tant que variables et utilisés par la règle suivante pour construire le message SOAP.