La demande d'action métier au service web REST se fait au format JSON dans le corps du message http.
Paramètre | Balise JSON | Description |
---|---|---|
Action | "action" | Nom de l'action du service attendue par le service web, par exemple WEB_SERVICE_INFINITY |
Paramètres | "param" | Paramètres d'entrée attendus par l'action du service. Dépend de chaque action. Voir plus bas |
Token | "access_token" | Valeur du TOKEN obtenu durant la phase d'authentification |
C’est ensuite la zone Paramètres (“param”) ci-dessus qui contient la demande d’action métier complète sous forme de chaine de caractères.
Cette zone “param” (chaîne de caractères) contient également une chaîne JSON et doit décrire la demande ainsi:
Paramètre | Balise JSON | Description |
---|---|---|
Zone action métier | "action" | Zone qui décrit l’action métier.
Le contenu du corps et des parameters dépend de chaque action. Voir dans la description de chaque action métier |
Données métier | "data" | Paramètres d'entrée attendus par l'action métier. Dépend de chaque action. Voir dans la description de chaque action métier |
Info |
---|
HeaderUn HEADER HTTP est uniquement utilisé pour indiqué le Content-Type : application/json , mais pas de header d'authentification puisqu'elle passe par le champ "access_token" du corps |
Avertissement |
---|
RappelIl ne faut pas confondre "l'action de service web" et "l'action métier" L'action du service web est celle configurée dans Harmony dans "Actions des services". Elle fait le lien entre un NOM D'ACTION SERVICE et un PROGRAMME DIVA.
Exemple :
|
Exemple de corps http pour l’appel de l’action de service web WEB_SERVICE_INFINITY, pour l’action métier INTERROGER qui attend un paramètre DOS pour le contexte d’appel et un paramètre TIERS dans le corps de la demande métier.
(A gauche un exemple ; à droite l’exemple commenté)
Bloc de code |
---|
{ "action":"WEB_SERVICE_INFINITY", "access_token":"{{TOKEN}}", "param":" { 'action': { 'swinfinity': 'INTERROGER' } 'parameters': { 'dos': '998' }, 'data': { 'TIERS':'monTiers' } }" } |
Bloc de code |
---|
{ => ouverture du corps http "action":"WEB_SERVICE_INFINITY", =>la balise action de premier niveau est l'action de service web "access_token":"{{TOKEN}}", =>le jeton d'authentification "param":" =>la zone param contient la demande métier sous forme de chaîne donc entouré de " { => ouverture du corps demande métier 'action': =>la balise action dans param est l'action métier { 'swinfinity': 'INTERROGER' =>nom de l'action métier } 'parameters': =>paramètres de contexte pour la demande { 'dos': '998' =>les valeurs attendues 'parameters' dépendent de chaque demande métier }, 'data': =>données de la demande { 'TIERS':'monTiers' =>les valeurs attendues 'data' dépendent de chaque demande métier } }" =>fermeture du corps demande métier + fin de la zone param de la demande métier sous forme de chaîne donc entouré de " } =>fermeture du corps http |
L'URL a utiliser pour les demandes d'action métier est sous la forme : base commune de l'URL + '/api/v1/WebService/Execute'
Exemple d'URL sur un poste local:
http://localhost:8080/DhsDivaltoServiceDivaApiRest/api/v1/WebService/Execute
Exemple d'URL en Divalto cloud:
https://api.divaltocloud.com/123456/TEST1/api/v1/WebService/Execute
Exemple de paramétrage d'action des services Harmony:
Exemple de demande d'action de service :
{
"action":"ACADEMY_REST",
"access_token":"eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJpZGVudCI6IkRpdmFsdG9BcGlSZXN0IiwidXNlciI6mJsaXR0ZWwiLCJwYXNzd29yZCI6ImxrajEyMzIxQSIsImVudiI6IkVSUDIxNSIsImRvbWFpbiI6ImRpdmFsdG8iLCJleHAiOiI0DI4MSw0NjYzMTY4NjM0In0.Vx_Qe_WbRhA0qjMOP4tiB-hUnC2lBwsy68GDzzryLhk"
"param":"{ 'items': { 'dos': '998', 'ref': 'BLO0001', 'srefList': { 'srefElem': [ {'sref1': 'XL', 'sref2': 'BLEU'}, {'sref1': 'L' , 'sref2': 'BLANC'}, {'sref1': 'XL', 'sref2': 'BLANC'} ] } }}",
}
=> Fait appel a l'action métier ACADEMY_REST en donnant des paramètres pour effectuer la demande
Info |
---|
Le traitement Diva appelé ne reçoit que la zone 'param' transmise par l'appelant. L'enveloppe JSON ainsi que les informations d'authentification sont inconnues du traitement métier |
Pour des exemples de demandes et de réponses, il faut se reporter aux chapitres concernant les différents services web métier
Pages enfant (affichage des enfants) | ||||
---|---|---|---|---|
|