PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → retour d'un Webservice REST
retour d'un Webservice REST
Iniciado por Sauveur CONSALVI, 04,sep. 2020 17:01 - No hay respuesta
Miembro registrado
402 mensajes
Publicado el 04,septiembre 2020 - 17:01
Bonjour,
J'ai réalisé un Webservice REST que j'ai mis chez KALANDA
Quand je l’interroge via un projet Windev 25 sur mon PC, pas de problème
Quand je fait cette même interrogation sur un projet Windev Mobile 25, ANDROID, la réponse est illisible
Que l’exécution se fasse à partir de l'émulateur ou de l'installation sur le téléphone
Voila la réponse




Voici le code d'appel (Identique en Windev et Windev Mobile
hRequete est httpRequest
hRequete..Method = httpGet
hRequete..URL = "http://www.asorco.fr/WS_Traitement_Asorco?WS_Traitement_Asorco=" + SAI_NomSociete
rReponse est un httpRéponse = HTTPEnvoie(hRequete)
sToto est une chaîne=BufferVersHexa(rReponse..Contenu)
Info("Avec httpRequest",rReponse..Contenu)
SI ErreurDétectée ALORS
Erreur("Erreur lors de la requête "+ErreurInfo(errComplet))
SINON
////// info(rReponse..StatusCode,rReponse..DescriptionCodeEtat,rReponse)
SI rReponse..StatusCode<>200 ALORS
Erreur("Erreur lors de la requête "+ErreurInfo(errComplet),rReponse..DescriptionCodeEtat)
//// Info ("Trouvée "+rReponse ..Content)
SINON
//// Info ("Société non trouvée" , rReponse..Content," ","Code état "+rReponse..CodeEtat,"Erreur "+rReponse..DescriptionCodeEtat)
SELON rReponse.Contenu
// 0=Origine, 909=Société Non trouvée, 9090=Paramètre "WebserviceParamètre("NomSoc")" reçut est vide
CAS "909"
Erreur("Société non retrouvée" +SAI_NomSociete)
AUTRE CAS
Info("Trouvé Code société = "+rReponse..Contenu)
FIN
FIN
FIN


Voila le code du Webservice
gsEnvoi est une chaîne // SocLit,nom de la société pour une lecture de société
// SocEcr,nom de la société pour une création de société
gtabTableEnvoi est un tableau de chaînes
gsReponse est une chaîne
gsTraitement, gsCode, gsComplement est une chaîne ANSI

Procedure Webservice_Asorco()
// Utilisez la commande WebserviceParamètre() pour récupérer les paramètres du point d'entrée du Webservice REST associé à cette procédure.
// Consultez l'aide de WebserviceParamètre pour plus d'informations.
gsEnvoi = WebserviceParamètre("WS_Traitement_Asorco")
gbOK=HPasse("*","Asorco$68100")
SI gbOK=Faux ALORS
gsReponse= "Erreur dans la définition du mot de passe des fichiers"
FIN
SI WebserviceParamètre("WS_Traitement_Asorco")="" ALORS
gsReponse= "Vous n'avez rien transmis"
SINON
gtabTableEnvoi=ChaîneDécoupe(gsEnvoi,",")
SI gtabTableEnvoi.Occurrence()<>2 ALORS
gsReponse="Le traitement demandé dot être constitué du code de la demande et du complément, séparé par , (une virgule) "+RC+gsEnvoi
SINON
gsCode=gtabTableEnvoi[1]
gsComplement=gtabTableEnvoi[2]
SELON gsCode
CAS "SocLit" // Recherche de la société
SocieteLit()
RENVOYER gsReponse
CAS "SocEcr" // Enregistrement d'une société
RENVOYER gsReponse
AUTRE CAS
gsReponse="Le traitement demandé n'est pas prévu !"+RC+gsEnvoi
FIN
FIN
FIN
RENVOYER gsReponse


Pourquoi cette anomalie ?
Comment corriger ? Traduire la réponse ? Si oui, comment ?
Cordialement
SC

--
Cordialement
SC