Structures Requête/Réponse
Cette section du dialogue vous permet de sélectionner les structures de requête et de réponse de votre service Web appeler. Lorsque vous appelez les services Web qui s’attendent à du contenu dans la partie du corps du message de requête ou du contenu de renvoi dans la partie du contenu dans le message de réponse, vous pouvez définir les structures de requête et de réponse comme suit :
•Pas de structure
•XML
•JSON
Note : | Dans les appels de service Web créés avec MapForce, vous pouvez utiliser un JSON standard en tant que structure de requête ou de réponse ; les structures JSON Lines ou JSON5 ne sont pas prises en charge. |
La structure sélectionnée détermine les items mappables qui apparaissent sur le mappage comme enfants de l’item Body .
Structure de requête
Pour définir la structure de requête de votre service Web appeler, naviguez vers la section Structures du dialogue Paramètres d’appel de service Web et cliquez sur Éditer à côté du champ Requête. Ceci ouvrira la boîte de dialogue Structure de requête (capture d’écran ci-dessous) Alternativement, vous pouvez ouvrir le dialogue Structure de requête, en cliquant sur le bouton dans la partie de requête du composant de service Web dans votre mappage.
Type de structure
Une fois que vous avez ouvert le dialogue Structure de requête, sélectionnez une des options suivantes dans la section Type de structure :
•Si le service Web s’attend à ne pas voir de contenu dans la partie du corps, ou si vous aimeriez fournir le corps brut (entité MIME) directement depuis le mappage, sélectionnez Pas de structure.
•Pour XML, obtenir le schéma XML ou DTD de la requête depuis le fournisseur du service Web. Si vous sélectionnez un fichier d’instance XML, il doit avoir une référence de schéma valide. Quelques schémas XML définissent les éléments avec une déclaration globale (à savoir, les éléments dont le parent est l’élément schéma). Pour de tels schémas, vous pouvez choisir quel élément dans le schéma devrait être l’élément racine de la structure du mappage dans MapForce. À cette fin, cliquez sur Choisir, puis, dans la boîte de dialogue qui apparaît, sélectionnez l’élément racine souhaité.
•Pour JSON, obtenez un schéma JSON de la requête du fournisseur du service Web ou générez-le depuis un fichier échantillon JSON avec un outil tel que Altova XMLSpy.
•Pour les Protocol Buffers, obtenez du fournisseur de service Web le fichier .proto décrivant le fichier binaire et cliquez sur Parcourir pour sélectionner le fichier. Le champ Type de message racine est pertinent quand le fichier Protocol Buffers contient de multiples types de messages. Cliquez sur Choisir pour sélectionner le type de message qui doit être au niveau de la racine de la structure.
Conseil : | Si vous avez un fichier de requête échantillon XML ou JSON mais n’avez pas de fichier schéma, vous pouvez utiliser Altova XMLSpy pour générer le fichier de schéma. Le cas échéant, XMLSpy peut convertir votre fichier d'instance de XML à JSON, ou vice-versa. |
Écraser type de contenu
En option, sélectionnez la case à cocher Écraser type de contenu si vous avez besoin d’écraser l’en-tête Content-Type définie implicitement par MapForce. Vous pouvez aussi saisir les paramètres après le type de contenu, par exemple, Content-Type: text/html; charset=utf-8.
Structure de réponse
Pour définir la structure de réponse de votre appel de service Web, naviguez vers la section Structures du dialogue Paramètres d’appel de service Web et cliquez sur Éditer à côté du champ Réponse. Ceci ouvre le dialogue Structure de réponse (capture d’écran ci-dessous). En alternative, vous pouvez ouvrir le dialogue Structure de requête, en cliquant sur le bouton dans la partie de la réponse du composant de service Web dans votre mappage.
Type de structure
Une fois que avez ouvert le dialogue Structure de requête, vous devez sélectionner une des options dans la section Type de structure. Si le service Web ne retourne aucun contenu dans la partie du corps, ou si vous aimeriez traiter le corps brut (entité MIME) directement depuis le mappage, sélectionnez Pas de structure. Pour information sur les autres options disponibles dans cette section du dialogue, voir Type de structure dans la sous-section Structure de requête ci-dessus.
Type de contenu et statut HTTP
E n option, remplissez les cases de texte Type de contenu et Statut HTTP (capture d’écran ci-dessous) si vous avez besoin de filtrer une entité de réponse MIME par type de média (contenu) et code de statut HTTP. Ceci est utile si vous avez besoin de gérer de manière conditionnelle selon le code du statut HTTP et le type du contenu retourné par l’appel de service Web. Pour un exemple, voir Gestion d'erreur dans les HTTP API.
Par défaut, le filtre Type de contenu est défini à */*, qui correspond à tous les types de médias. Les codes de statut HTTP par défaut sont 200-299. Si l’appel de service Web retourne un autre code de statut qui n’est pas géré explicitement, l’exécution de mappage échouera avec une erreur.
Note
Lorsque vous enregistrez le mappage, tout chemin absolu dans la boîte de dialogue Requête/Structure de réponse devient relative au fichier de design de mappage (.mfd) si la case à cocher Enregistrer tous les chemins de fichier relatifs à mfd est sélectionnée dans les paramètres de composants. |