Services Web
MapForce prend en charge des services Web basés sur WSDL et non WSDL. Les services Web Non-WSDL incluent une large catégorie de HTTP API génériques qui sont souvent référrés comme REST ou RESTful API.
À propos des produits Altova Services Web basés sur WSDL
Un service Web basé sur WSDL utilise un fichier WSDL (Web Services Description Language) pour décrire les opérations du service, les messages d’entrée et de sortie, et les détails de réseau. Les fichiers WSDL sont basés sur XML et utilisent généralement le protocole SOAP qui définissent comment les messages sont échangés entre un client et un service.
MapForce vous permet également de concevoir des projets du service Web SOAP et de générer Java ou le code C# code qui implémente les services Web SOAP. En outre, vous pouvez faire un appel de service Web à votre service Web SOAP et sortir les données de réponse dans tout format pris en charge dans MapForce. Si le fichier WDSL met en place plusieurs services, points terminaux et opérations vous pouvez les sélectionner ou les mettre à jour directement dans MapForce.
Protocoles des services basés sur WSDL
Lorsque vous sélectionnez une services Web WSDL-based, vous pouvez utiliser les protocoles suivants :
•SOAP 1.1, 1.2 sur HTTP : Les styles RPC/Encoded et Document/Literal sont pris en charge. Si le serveur Web retourne une erreur WSDL, l'exécution de mappage cesse. Pour ces cas particuliers, vous pouvez insérer en option un composant d’exception dans la zone de mappage pour gérer l'erreur. Si le serveur Web retourne une erreur non-WSDL, l'exécution de mappage cesse et un message d'erreur est retourné (ou affiché sur l'écran si vous prévisualisez le mappage dans MapForce).
•Non-SOAP sur HTTP : Cela fait référence aux services un peu moins connus HTTP non-SOAP. avec HTTP GET, le style url-encoded est pris en charge. avec HTTP POST, les styles url-encoded et text/xml sont pris en charge.
À propos des HTTP API
Les HTTP API ont généralement des structures de requête ou de réponse dans la partie du corps message. MapForce prend en charge les types suivants de corps de requête et de réponse : JSON, XML, les Protocol Buffers et corps non structurés avec les types MIME personnalisés.
Pour les API HTTP, vous pouvez saisir les détails de service Web manuellement ou automatiquement. Les détails de service Web incluent une URL, une méthode de requête (par ex., GET, POST, PUT), des structures de requête ou de réponse (par ex., XML, JSON, types MIME personnalisés), et des paramètres.
XML et JSON
Vous pouvez utiliser les schémas JSON, XML ou DTD pour vos structures de requête/réponse. MapForce peut aussi accepter un fichier XML avec une référence de schéma valide. De plus, vous pouvez aussi importer la définition de service Web depuis un fichier WADL et faire des ajustements nécessaires manuellement. Veuillez noter, néanmoins que WADL ne fournit aucune méthode standard pour définir des structures JSON, il ne fournit que des structures XML.
Si vous avez un fichier d'instance XML ou JSON d'échantillon sans fichier de schéma, vous pouvez créer ou générer le schéma, avec XMLSpy (https://www.altova.com/fr/xmlspy.html). Le cas échéant, XMLSpy peut convertir votre fichier d'instance de XML à JSON, ou vice-versa.
Protocol Buffers
Si vous souhaitez travailler avec les requêtes et réponses Protocol Buffers, il vous faut un fichier .proto qui décrit le fichier binaire Protocol Buffers. Dans ce scénario, le corps du service Web peut être mappé de ou vers un composant Protocol Buffers. Pour plus d'informations, voir Exemple : Lire des données depuis Protocol Buffers et Exemple : Écrire les données dans les Protocol Buffers.
Les corps non structurés avec des types MIME personnalisés
Vous pouvez aussi appeler des services Web dans laquelle la structure de requête ou de réponse est flexible et n'est pas liée à un schéma particulier. Dans de tels cas, vous pouvez utiliser les fonctions MapForce mime built-in, soit pour créer a corps de message brut envoyé dans a service Web (l'entité MIME), soit traiter depuis le mappage l'entité MIME retourné par le service Web.
Services Web HTTP API vs. Basés sur WSDL
La table ci-dessous résume les détails pris en charge des services Web HTTP API et basés sur WSDL dans MapForce.
Fonction | HTTP API | basé sur WSDL |
---|---|---|
Langage de mappage | Built-In
| Built-In, C#, Java |
Automatisation avec MapForce Server | Oui
| Oui, si le langage est Built-In |
Protocoles | HTTP (GET, POST, PUT, DELETE, verbes personnalisés) | •SOAP 1.1, 1.2 sur HTTP •Services Non-SOAP sur HTTP
|
Requête/structures de réponse | •XML •JSON •Protocol Buffers •Types MIME personnalisés
| •Message SOAP |
Sécurité | •HTTP/HTTPS •Certificats de serveur •Certificats de client •Authentification HTTP •Authentication préemptive •Autorisation OAuth | •HTTP/HTTPS •Certificats de serveur •Certificats de client* •Authentification HTTP •Authentication préemptive* •Sécurité WS* •Autorisation OAuth*
* Pris en charge uniquement dans Built-In. |
Définition de service | •Peut être défini manuellement •Peut être importé de :
oun fichier WADL oune URL oun fichier OpenAPI
| •Doit être importé par un fichier WSDL |
Service Web dynamique URL | Vous pouvez fournir l'URL complète du service Web en tant que a paramètre du mappage ou le définir à l’intérieur du mappage. Vous pouvez aussi fournir des parties d'URL spécifiques en tant que paramètres du mappage alors que l'URL de base est définie dans le mappage.
| Vous pouvez fournir l'URL du service Web en tant que paramètre du mappage ou vous pouvez les fixer (enregistrer avec le mappage). |
Délai d’expiration (L'intervalle après lequel l'appel s'arrêtera si le serveur web ne répond pas)
| Oui | Oui |
Authentification dynamique (Détails d’authentification fournis par le mappage ou comme paramètre au mappage. Pour les détails, voir Authentification dynamique.)
| Oui | Oui |