PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → Webservice MTOM XOP
Webservice MTOM XOP
Iniciado por Nicolas CAILLIEZ, 09,nov. 2018 11:09 - 6 respuestas
Miembro registrado
190 mensajes
Popularité : +21 (23 votes)
Publicado el 09,noviembre 2018 - 11:09
Bonjour

avez vous plus d'infos sur l'optimisation MTOM / XOP, d'après la doc windev 23, c'est en standard

voir brochure windev 23 , page 65, paragraphe 'Tout Gérer' , dernière ligne.

j'ai un retour de webservice de colissimo sous cette forme (Méthode Rest via Restenvoie ) :
--uuid:c5414cba-0387-47db-8787-17ed67a93f7b
Content-Type: application/json;charset=UTF-8
Content-Transfer-Encoding: binary
Content-ID: 

{"messages":[{"id":"0","type":"INFOS","messageContent":"La requête a été traitée avec succès","replacementValues":[]}],"labelXmlV2Reponse":null,"labelV2Response":{"parcelNumber":"6A15914903334","parcelNumberPartner":"0059000116A1591490555801250W","pdfUrl":null,"fields":null}}
--uuid:c5414cba-0387-47db-8787-17ed67a93f7b
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
Content-ID: 


Y a t il des fonctions natives pour extraire les infos ou faut il parcourir et extraire avec des fonctions chaines?

Merci
Miembro registrado
950 mensajes
Popularité : +53 (63 votes)
Publicado el 09,noviembre 2018 - 13:22
Bonjour,

Le content-id est une fichier pdf en binaire,
Si tu sauve le contenu dans un fichier tu pourra l'ouvrir

Jordan
Miembro registrado
190 mensajes
Popularité : +21 (23 votes)
Publicado el 09,noviembre 2018 - 16:58
Merci pour ton retour

ce qui m’intéresse, c 'est d'extraire les differentes parties du retour du webservice.
y a du json dans le 1er content id (avec n° etiquette ) , du octet stream dans le 2e content id (l'etiquette).

Je peux parser cette chaine ok. N' y a t il pas de fonctions natives pour extraire directement dans ce genre de retour?

Merci
Miembro registrado
950 mensajes
Popularité : +53 (63 votes)
Publicado el 09,noviembre 2018 - 17:31
Quel est ton code pour arriver a cette reponse ?
Miembro registrado
950 mensajes
Popularité : +53 (63 votes)
Publicado el 09,noviembre 2018 - 17:51
Quel valeur veut tu recuperer ?

va sur http://labelary.com/viewer.html

et colle le texte apres content-id, tu verras la forme du fichier renvoyer par le webservice
Miembro registrado
190 mensajes
Popularité : +21 (23 votes)
Publicado el 09,noviembre 2018 - 18:37
mon etiquette je l'imprime bien, pas de soucis.
Mais en décomposant le contenu de façon peut être pas idéale.

Le code qui me permet d'avoir mon contenu
cMaRequete est un restRequête
cMaRequete..URL = "https://ws.colissimo.fr/sls-ws/SlsServiceWSRest/2.0/generateLabel/"
cMaRequete..Contenu = sParam_jSon
cMaRequete..Méthode = httpPost  
cMaRequete..ContentType = "application/json"

cMaReponse est un restRéponse = RESTEnvoie(cMaRequete)
SI ErreurDétectée ALORS
Info("erreur")
Erreur(ErreurInfo(errComplet))
SINON
Info(cMaReponse..Contenu)
FIN
Miembro registrado
950 mensajes
Popularité : +53 (63 votes)
Publicado el 09,noviembre 2018 - 19:27
Si tu reçois l'étiquette en pdf, tu pourrais utilisé la fonction pdfverstexte()