Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi ActiveX) Shopware Upload Media (JPG File)See more Shopware ExamplesDemonstrates how to upload a media file to a Shopware shop.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var http: TChilkatHttp; sbFileData: TChilkatStringBuilder; bdFileData: TChilkatBinData; success: Integer; json: TChilkatJsonObject; resp: IChilkatHttpResponse; sbResponseBody: TChilkatStringBuilder; jResp: TChilkatJsonObject; respStatusCode: Integer; dataId: Integer; dataLocation: WideString; begin // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := TChilkatHttp.Create(Self); http.Login := 'api_username'; http.Password := 'api_key'; http.BasicAuth := 1; // Use this online tool to generate code from sample JSON: // Generate Code to Create JSON // The following JSON is sent in the request body. // { // "file": "data:image/jpeg;base64,BASE64_DATA_HERE", // "album": -9, // "description": "image description", // "userId": 5, // "name": "my_image" // } sbFileData := TChilkatStringBuilder.Create(Self); sbFileData.Append('data:image/jpeg;base64,'); bdFileData := TChilkatBinData.Create(Self); success := bdFileData.LoadFile('qa_data/jpg/starfish.jpg'); if (success = 0) then begin Memo1.Lines.Add('Failed to load file.'); Exit; end; sbFileData.Append(bdFileData.GetEncoded('base64')); json := TChilkatJsonObject.Create(Self); json.UpdateString('file',sbFileData.GetAsString()); json.UpdateInt('album',-9); json.UpdateString('description','image description'); json.UpdateInt('userId',5); json.UpdateString('name','my_image'); resp := http.PostJson3('https://my-shopware-shop.com/api/media','application/json',json.ControlInterface); if (http.LastMethodSuccess = 0) then begin Memo1.Lines.Add(http.LastErrorText); Exit; end; sbResponseBody := TChilkatStringBuilder.Create(Self); resp.GetBodySb(sbResponseBody.ControlInterface); jResp := TChilkatJsonObject.Create(Self); jResp.LoadSb(sbResponseBody.ControlInterface); jResp.EmitCompact := 0; Memo1.Lines.Add('Response Body:'); Memo1.Lines.Add(jResp.Emit()); // A 201 response code indicates success. respStatusCode := resp.StatusCode; Memo1.Lines.Add('Response Status Code = ' + IntToStr(respStatusCode)); if (respStatusCode >= 400) then begin Memo1.Lines.Add('Response Header:'); Memo1.Lines.Add(resp.Header); Memo1.Lines.Add('Failed.'); Exit; end; // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "success": true, // "data": { // "id": 6862, // "location": "http:\/\/my-shopware-shop.com\/api\/media\/6862" // } // } // Sample code for parsing the JSON response... // Use the following online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON success := jResp.BoolOf('success'); dataId := jResp.IntOf('data.id'); dataLocation := jResp.StringOf('data.location'); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.