Aller directement à la fin des métadonnées
Aller au début des métadonnées

Vous regardez une version antérieure (v. /wiki/spaces/PAI/pages/10516501973/3+Demande+d+action+-+cas+SW+m+tier) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 7) afficher la version suivante »

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.

  • Nom de l’action métier par la balise "swinfinity", et paramètres de l’action métier par la balise “parameters

  • Données de l’action métier par la balise “data” pour donner le corps de la demande.

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

Header

Un 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


Rappel

Il 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.


Ensuite le PROGRAMME DIVA est en général un traitement de routage, qui va utiliser les paramètres afin de déterminer L'ACTION METIER a traiter et les données pour ce traitement

Exemple :

  1. Divalto fournit un NOM D'ACTION SERVICE en mode rest : WEB_SERVICE_INFINITY qui fait appel a A5PPSWINFINITY.DHOP

  2. A5PPSWINFINITY.DHOP est un programme avec routage

    1. Il va chercher dans les paramètres reçus le NOM D'ACTION METIER

    2. Il traite l'action métier a partir des données de la zone paramètres

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é)

{ 
    "action":"WEB_SERVICE_INFINITY",
    "access_token":"{{TOKEN}}",
    "param":"
        {
        'action': 
            {
            'swinfinity': 'INTERROGER'
            }
		'parameters': 
            {
			'dos': '998'
		    },
        'data':
            {
            'TIERS':'monTiers'
            }
      }"
}

{ => 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

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


  • Aucune étiquette