Bonjour à tous
je dois faire une application en Delphi 10.3 pour faire signer des documents PDF avec Yousign (un site de signature électronique)
J'arrive à faire un GET : l'authentification se passe correctement et je récupère les noms de signataires en format JSON
Il faut maintenant que j'envoie un PDF à signer encodé en 64bits
le body doit comporter 2 valeurs : le nom (name) et le fichier PDF encodé (content)
avec Postman, tout se passe bien
{
"name": "MonFichier.pdf",
"content": "JVBERi0xLjMNJeLjz9MNCjIzMCAwIG9iag08PC9MaW5lYXJpemVkIDEvTCAxMTI1 etc .."
J’utilise les composants TRESTClient, TRESTRequest et TRESTResponse
Le serveur me renvoie l'erreur 400 Bad Request
Je pense que c'est la création de mon JSON à envoyer qui n'est pas correct
voici mon source :
Si quelqu'un peut m'aider, ça m'avancerait beaucoup
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
21
22
23
24
25
26
27
28
29 procedure TFYS_principale.BPostFilesClick(Sender: TObject); var inStream: TStream; outStream: TStream; begin // chargement du fichier PDF dans un stream inStream := TFileStream.Create('c:\testpdf\test.pdf', fmOpenRead); outStream := TStringStream.Create; // encodage en 64 bits TNetEncoding.Base64.Encode(inStream, outStream); outStream.Position := 0; LJSONObject.AddPair('name','MonFichier.pdf'); LJSONObject.AddPair('content', outStream.ToString); MonRESTRequest.AddBody(LJSONObject); MonRESTRequest.Execute; Restrequest_PostFiles.Execute; // ERREUR 400 : bad request ! memo.Text := RESTResponse_PostFiles.JSONText; end;
Merci d'avance
Partager