PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV (versiones precedentes) → WebService - Récupérer un fichier
WebService - Récupérer un fichier
Iniciado por Dim Pas, 10,sep. 2025 13:48 - 4 respuestas
Publicado el 10,septiembre 2025 - 13:48
Bonjour,

Je travail avec WinDev 2024.
J'ai un moteur de déploiement WebDev 2024 sur un serveur Linux.

Je souhaiterai pouvoir envoyer des fichiers (pdf, zip, ...) de mes applications WinDev 2024, vers un WebService.

Auriez-vous une expérience en ce domaine, pour me donner les démarchent à suivre, car les codes que j'ai mis en place ne fonctionne pas. Du moins, pour la récupération des données "binaire" de mon fichier.


D'avance merci.
Miembro registrado
4.306 mensajes
Publicado el 11,septiembre 2025 - 09:53
Bonjout,Dim Pas a écrit :
car les codes que j'ai mis en place ne fonctionne pas.

Quels sont-ils ?

--
Il y a peut être plus simple, mais, ça tourne
Quand tout a échoué, utilise l'option RTFM
Publicado el 11,septiembre 2025 - 11:22
Voroltinquo a écrit :
Bonjout,Dim Pas a écrit :
car les codes que j'ai mis en place ne fonctionne pas.

Quels sont-ils ?


--
Il y a peut être plus simple, mais, ça tourne
Quand tout a échoué, utilise l'option RTFM


Bonjour,

Merci de prendre de votre temps, pour m'aider.

Voici l'un de mes multiple codes mis en place et qui ne fonctionne pas.

Côté client
sCheminFichier est une chaîne = "C:\fichiers\test.txt"
sURLWebservice est une chaîne = "http://192.168.1.5/UploadFile/"
bMonFichierBuf est un Buffer
bBufferEncode est un Buffer

MaRequêteREST est une restRequête
MaRéponseREST est une restRéponse

bMonFichierBuf = fChargeBuffer(sCheminFichier)
bBufferEncode = Encode(bMonFichierBuf,encodeBASE64URL)

MaRequêteREST.URL = sURLWebservice
MaRequêteREST.Méthode = httpPost
MaRequêteREST.ContentType = "application/octet-stream"

MaRéponseREST = RESTEnvoie(MaRequêteREST)


Dans la réponse, j'ai un code 200 OK. Comme je fais un fsauvebuffer, j'ai bien un fichier qui se créé, mais toujours vide.
Quand je consulte ma trame http(s), je vois passer le buffer, mais je n'arrive pas à récupérer les données dans ma procédure.

Je ne vois pas ce que je dois mettre dans la partie serveur, pour récupérer mon buffer.

J'y ait mis (sans résultat) :

WebserviceParamètre(....)
WebserviceLit....
HTTPDonneRésultat()


Encore merci de votre aide
Publicado el 11,septiembre 2025 - 11:22
Voroltinquo a écrit :
Bonjout,Dim Pas a écrit :
car les codes que j'ai mis en place ne fonctionne pas.

Quels sont-ils ?


--
Il y a peut être plus simple, mais, ça tourne
Quand tout a échoué, utilise l'option RTFM


Bonjour,

Merci de prendre de votre temps, pour m'aider.

Voici l'un de mes multiple codes mis en place et qui ne fonctionne pas.

Côté client
sCheminFichier est une chaîne = "C:\fichiers\test.txt"
sURLWebservice est une chaîne = "http://192.168.1.5/UploadFile/"
bMonFichierBuf est un Buffer
bBufferEncode est un Buffer

MaRequêteREST est une restRequête
MaRéponseREST est une restRéponse

bMonFichierBuf = fChargeBuffer(sCheminFichier)
bBufferEncode = Encode(bMonFichierBuf,encodeBASE64URL)

MaRequêteREST.URL = sURLWebservice
MaRequêteREST.Méthode = httpPost
MaRequêteREST.ContentType = "application/octet-stream"

MaRéponseREST = RESTEnvoie(MaRequêteREST)


Dans la réponse, j'ai un code 200 OK. Comme je fais un fsauvebuffer, j'ai bien un fichier qui se créé, mais toujours vide.
Quand je consulte ma trame http(s), je vois passer le buffer, mais je n'arrive pas à récupérer les données dans ma procédure.

Je ne vois pas ce que je dois mettre dans la partie serveur, pour récupérer mon buffer.

J'y ait mis (sans résultat) :

WebserviceParamètre(....)
WebserviceLit....
HTTPDonneRésultat()


Encore merci de votre aide
Publicado el 11,septiembre 2025 - 16:00
Dim a écrit :
Voroltinquo a écrit :
Bonjout,Dim Pas a écrit :
car les codes que j'ai mis en place ne fonctionne pas.

Quels sont-ils ?


--
Il y a peut être plus simple, mais, ça tourne
Quand tout a échoué, utilise l'option RTFM

Bonjour,

Merci de prendre de votre temps, pour m'aider.

Voici l'un de mes multiple codes mis en place et qui ne fonctionne pas.

Côté client
sCheminFichier est une chaîne = "C:\fichiers\test.txt"
sURLWebservice est une chaîne = "http://192.168.1.5/UploadFile/"
bMonFichierBuf est un Buffer
bBufferEncode est un Buffer

MaRequêteREST est une restRequête
MaRéponseREST est une restRéponse

bMonFichierBuf = fChargeBuffer(sCheminFichier)
bBufferEncode = Encode(bMonFichierBuf,encodeBASE64URL)

MaRequêteREST.URL = sURLWebservice
MaRequêteREST.Méthode = httpPost
MaRequêteREST.ContentType = "application/octet-stream"

MaRéponseREST = RESTEnvoie(MaRequêteREST)


Dans la réponse, j'ai un code 200 OK. Comme je fais un fsauvebuffer, j'ai bien un fichier qui se créé, mais toujours vide.
Quand je consulte ma trame http(s), je vois passer le buffer, mais je n'arrive pas à récupérer les données dans ma procédure.

Je ne vois pas ce que je dois mettre dans la partie serveur, pour récupérer mon buffer.

J'y ait mis (sans résultat) :

WebserviceParamètre(....)
WebserviceLit....
HTTPDonneRésultat()


Encore merci de votre aide



Bonjour,

Voilà, c'est résolu.
Merci pour votre soutient.

Pour la partie client, j'avais utilisé des type de variable Rest.... :

MaRequêteREST est une restRequête
MaRéponseREST est une restRéponse


Mais je ne récupérait pas grand chose sur la partie serveur du moins dans le moteur WebDev. En tout cas, pas mon Buffer.

A la place, sur la partie client, j'utilise maintenant le type de variable http.... :

MaRequêteREST est une httpRequête
MaRéponseREST est une httpRéponse


Maintenant sur la partie serveur, je récupère bien mon buffer via la procédure WebserviceParamètre

bBuffer est un Buffer = WebserviceParamètre(paramBuffer)


Bonne continuation.

Cordialement,