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 DLL) Demonstrates the Http.QuickRequestParams MethodDemonstrates how to use the Http.QuickRequestParams method. This is where query params can be provided non-URL-encoded in JSON format.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, FileAccess, HttpResponse, JsonObject; ... procedure TForm1.Button1Click(Sender: TObject); var http: HCkHttp; success: Boolean; queryParams: HCkJsonObject; sessionLogPath: PWideChar; resp: HCkHttpResponse; fac: HCkFileAccess; sessionLog: PWideChar; begin // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := CkHttp_Create(); // Demonstrate sending a GET request with query parameters. queryParams := CkJsonObject_Create(); CkJsonObject_UpdateInt(queryParams,'limit',100); CkJsonObject_UpdateString(queryParams,'email','joe@example.com'); CkJsonObject_UpdateString(queryParams,'token','VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2cuLi4='); // Set a session log filename so we can examine the exact request that is sent. sessionLogPath := 'qa_output/sessionLog.txt'; CkHttp_putSessionLogFilename(http,sessionLogPath); // Send the GET request to an endpoint. We don't care about the response. The purpose of this example // is to see the exact HTTP request that is sent.. resp := CkHttp_QuickRequestParams(http,'GET','https://www.chilkatsoft.com/echoPostBody.asp',queryParams); if (CkHttp_getLastMethodSuccess(http) = False) then begin Memo1.Lines.Add(CkHttp__lastErrorText(http)); Exit; end; CkHttpResponse_Dispose(resp); fac := CkFileAccess_Create(); sessionLog := CkFileAccess__readEntireTextFile(fac,sessionLogPath,'utf-8'); Memo1.Lines.Add(sessionLog); success := CkFileAccess_FileDelete(fac,sessionLogPath); // This is the exact GET request that was sent. // Notice how each query parameter is URL encoded and added to the HTTP start line of the request. // GET /echoPostBody.asp?limit=100&email=joe%40example.com&token=VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2cuLi4%3D HTTP/1.1 // Host: www.chilkatsoft.com // Accept: */* // Accept-Encoding: gzip CkHttp_Dispose(http); CkJsonObject_Dispose(queryParams); CkFileAccess_Dispose(fac); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.