Bonjour,
Je voudrais savoir si qqu'un connaît un exemple C++ d'envoi d'une image d'un serveur REST vers un client REST ?
j'ai bien trouvé un exemple Delphi inverse : Envoi d'une image d'un client vers un serveur, mais je ne suis pas parvenu à le porter en C++. voici l'exemple :
Coté client :
Code delphi : 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
30
31
32
33 var jsonObj: TJSONObject; mStream: TMemoryStream; jsonArray: TJSONArray; aParam: TRESTRequestParameter; begin jsonObj := TJSONObject.Create; try mStream := TMemoryStream.Create; try imag1.Bitmap.SaveToStream(mStream); mStream.Position := 0; jsonArray := TDBXJSONTools.StreamToJSON(mStream, 0, mStream.Size); finally mStream.Free; end; try jsonObj.AddPair('file', jsonArray); except jsonArray.Free; raise; end; RESTRequest1.Params.Clear; aParam := RESTRequest1.Params.AddItem; aParam.Value := jsonObj.ToString; aParam.ContentType := ctAPPLICATION_JSON; finally jsonObj.Free; end; RESTRequest1.method := rmPost RESTRequest1.Resource := 'UploadImage'; RESTRequest1.Execute; end;
Coté serveur :
Code delphi : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 procedure updateUploadImage(jsonResult: TJSONObject): var TempStream: TStream; begin TempStream := TDBXJSONTools.JSONToStream(jsonResult.Get('file').JsonValue as TJSONArray); try TBlobField(tblScanDetails.FieldByName('ScanDocument')).LoadFromStream(TempStream); finally TempStream.Free; end; end;
Carmichael
Partager