Bonjour à tous,
Désolé si je suis peut-être un peu maladroit, il s'agit de ma première intervention ici même si j'ai pourtant lu et appris de temps à autre sur ce site et je profite de remercier ceux qui prennent le temps d'en alimenter les contenus.
Je me permets de poser une question peut-être banale s'agissant de requête REST Post mais n'étant pas très familiarisé dans ce domaine, j'avoue que j'y perds mon latin.... En effet, il y a un peu partout des infos sur la commande Get mais il est beaucoup plus difficile de trouvers des infos sur Post surtout s'agissant de Multipart/Form-Data.
Voici l'exemple que je tente de réaliser et je précise que cette requête fonctionne parfaitement avec Postman.
Par contre si tente de la recréer avec RestDebugger (Delphi XE7), j'essuie systématiquement une erreur 400 ! et même scénario avec les composants RESTClient, RESTRequest, RESTResponse...
Le mystère reste entier en ce qui concerne la manière et où définir la Boundary...
Et j'ai tenté ou de joindre le fichier tel que c'est possible dans Postman ou de l'envoyer en code XML, les résultats sont les mêmes...
J'ai "torturé" tout cela dans passablement de sens, peut-être pas tous je l'avoue mais cependant rien à faire, je finis toujours avec une erreur 400 ! :
Donc si une ou plusieurs personnes ont déjà rencontré ce genre de problème, ce qui me semble être le cas ayant visité pas mal de sites sur le sujet
et une ou plusieurs solutions existent, je vous remercie infiniment pour votre aide
Voici donc: (Les données sont bien évidemment fictives
------------------------------------------------------------------------------------------------------------------------------------------
https://123.456.7.890:8080/ab/cde/fghi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 POST /ab/cde/fghi HTTP/1.1 Host: 123.456.7.890:8080 IDCLI: 123456789 Content-Type: multipart/form-data; boundary=--Boundary7MA4Y Authorization: Krpaf123456789abD Content-Length: 441 --Boundary7MA4Y Content-Disposition: form-data; name="mystream"; filename="/D:/REST/file123456.xml" Content-Type: text/xml (data) --Boundary7MA4Y Content-Disposition: form-data; name="myinfo" Content-Type: application/json { "printLanguage" : "fr" } --Boundary7MA4Y
Partager