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
(Unicode C) 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.
#include <C_CkHttpW.h> #include <C_CkJsonObjectW.h> #include <C_CkHttpResponseW.h> #include <C_CkFileAccessW.h> void ChilkatSample(void) { HCkHttpW http; BOOL success; HCkJsonObjectW queryParams; const wchar_t *sessionLogPath; HCkHttpResponseW resp; HCkFileAccessW fac; const wchar_t *sessionLog; // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http = CkHttpW_Create(); // Demonstrate sending a GET request with query parameters. queryParams = CkJsonObjectW_Create(); CkJsonObjectW_UpdateInt(queryParams,L"limit",100); CkJsonObjectW_UpdateString(queryParams,L"email",L"joe@example.com"); CkJsonObjectW_UpdateString(queryParams,L"token",L"VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2cuLi4="); // Set a session log filename so we can examine the exact request that is sent. sessionLogPath = L"qa_output/sessionLog.txt"; CkHttpW_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 = CkHttpW_QuickRequestParams(http,L"GET",L"https://www.chilkatsoft.com/echoPostBody.asp",queryParams); if (CkHttpW_getLastMethodSuccess(http) == FALSE) { wprintf(L"%s\n",CkHttpW_lastErrorText(http)); CkHttpW_Dispose(http); CkJsonObjectW_Dispose(queryParams); return; } CkHttpResponseW_Dispose(resp); fac = CkFileAccessW_Create(); sessionLog = CkFileAccessW_readEntireTextFile(fac,sessionLogPath,L"utf-8"); wprintf(L"%s\n",sessionLog); success = CkFileAccessW_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 CkHttpW_Dispose(http); CkJsonObjectW_Dispose(queryParams); CkFileAccessW_Dispose(fac); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.