version 11.3 (Modifiée)
FIXER OPTION WEB SERVICE (option; valeur)
Paramètre | Type | Description | |
option | Entier long | Code de l'option à fixer | |
valeur | Entier long | Texte | Valeur de l'option |
Note préliminaire : Cette commande est destinée aux utilisateurs avancés des Web Services. Son emploi est facultatif.
Description
La commande FIXER OPTION WEB SERVICE permet de définir différentes options qui seront utilisées lors de la prochaine requête SOAP déclenchée par la commande APPELER WEB SERVICE.
Vous pouvez appeler cette commande autant de fois qu'il y a d'options à fixer.
Passez dans le paramètre option le numéro de l'option à définir et dans le paramètre valeur la nouvelle valeur de l'option. Vous pouvez utiliser pour ces deux paramètres une des constantes prédéfinies suivantes, situées dans le thème "Web Services (Client)" :
Constante (param option) | Type | Valeur |
Web Service timeout HTTP | Entier long | 1 |
Web Service header SOAP | Entier long | 2 |
Web Service version SOAP | Entier long | 3 |
Web Service afficher dial auth | Entier long | 4 |
Web Service effacer infos auth | Entier long | 5 |
Web Service compression HTTP | Entier long | 6 |
Constante (param valeur) | Type | Valeur |
Web Service SOAP_1_1 | Entier long | 0 |
Web Service SOAP_1_2 | Entier long | 1 |
Web Service compression deflate | Entier long | 1 |
Voici la description des options et des valeurs possibles :
option = Web Service timeout HTTP
valeur = "timeout" de la partie cliente exprimé en secondes.
Le timeout de la partie cliente est le délai d'attente du client Web Service en cas de non-réponse du serveur. A l'issue de ce délai, le client referme la session, la requête est perdue.
Par défaut, ce délai est de 180 secondes. Il peut être modifié en raison de caractéristiques particulières (état du réseau, spécificités du Web Service, etc.).
option = Web Service header SOAP
valeur = référence d'élément xml racine à insérer en tant que header (en-tête) de la requête SOAP.
Cette option permet d'insérer un header dans la requête SOAP générée par la commande APPELER WEB SERVICE. Par défaut, les requêtes SOAP ne comportent pas d'en-tête spécifique. Cependant, certains Web Services requièrent la présence de cet en-tête, par exemple pour la gestion de paramètres d'identification.
option = Web Service version SOAP
valeur = Web Service SOAP_1_1 ou Web Service SOAP_1_2
Cette option permet de préciser la version du protocole SOAP utilisée dans la requête. Passez dans valeur la constante Web Service SOAP_1_1 pour indiquer la version 1.1 et la constante Web Service SOAP_1_2 pour indiquer la version 1.2.
option = Web Service afficher dial auth
valeur = 0 (ne pas afficher le dialogue) ou 1 (afficher le dialogue)
Cette option gère l'affichage de boîte de dialogue d'authentification lors de l'exécution de la commande APPELER WEB SERVICE. Par défaut, cette commande ne provoque jamais l'affichage de la boîte de dialogue, vous devez en principe utiliser la commande AUTHENTIFIER WEB SERVICE. Toutefois, si vous souhaitez qu'une boîte de dialogue d'authentification apparaisse pour que l'utilisateur saisisse ses identifiants, vous devez utiliser cette option : passez 1 dans valeur pour afficher la boîte de dialogue, et 0 sinon. La boîte de dialogue n'apparaît que si le service Web requiert une authentification.
option = Web Service effacer infos auth
valeur = 0 (ne pas effacer les informations) ou 1 (les effacer)
Cette option permet d'indiquer à 4D de mémoriser les informations d'authentification de l'utilisateur (nom d'utilisateur, mot de passe, méthode, etc.), dans le but de les réutiliser par la suite. Par défaut, ces informations sont effacées après chaque exécution de la commande APPELER WEB SERVICE. Passez 0 dans valeur pour les mémoriser et 1 pour les effacer. A noter que lorsque vous passez 0, les informations sont conservées pendant la session mais ne sont pas stockées..
option = Web Service compression HTTP
valeur = Web Service compression deflate
Cette option permet d'activer un mécanisme interne de compression des requêtes SOAP afin d'accélérer les échanges inter-applications 4D. Lorsque vous exécutez l'instruction FIXER OPTION WEB SERVICE(Web Service compression HTTP; Web Service compression deflate) sur le client 4D du Web Service, les données de la prochaine requête SOAP envoyée par le client seront compressées en utilisant un mécanisme standard HTTP avant leur envoi au serveur SOAP 4D. Le serveur décompressera et analysera la requête puis répondra en utilisant automatiquement le même mécanisme. Seule la requête suivant l'appel de la commande FIXER OPTION WEB SERVICE est affectée. Vous devez donc appeler cette commande chaque fois que vous voulez utiliser la compression. Par défaut, 4D ne compresse pas les requêtes HTTP des Web Services.
Notes :
"Deflate" est le nom de l'algorithme de compression utilisé en interne par 4D.
Ce mécanisme ne peut pas être utilisé pour des requêtes adressées à un serveur SOAP 4D d'une version antérieure à la 11.3.
Afin de vous permettre d'optimiser encore ce fonctionnement, des options supplémentaires configurent le seuil et le taux de compression des requêtes. Ces options sont accessibles via la commande FIXER PARAMETRE BASE.
L'ordre d'appel des options n'a pas d'importance. Si une même option est définie plusieurs fois, seule la valeur du dernier appel est prise en compte.
Exemples
(1) Insertion d'un en-tête personnalisé dans la requête SOAP :
` Création d'une référence XML C_ALPHA(16;vRefRacine;vRefElement) vRefRacine:=DOM Creer ref XML("RootElement") vxPath:="/RootElement/Elem1/Elem2/Elem3" vRefElement:=DOM Creer element XML(vRefRacine;vxPath) `Modification de l'en-tête SOAP avec la référence FIXER OPTION WEB SERVICE(Web Service header SOAP;vRefElement)
(2) Utilisation de la version 1.2 du protocole SOAP :
FIXER OPTION WEB SERVICE(Web Service version SOAP;Web Service SOAP_1_2)
Référence