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) HTTP POST x-www-form-urlencodedDemonstrates how to send a simple x-www-form-urlencoded POST.
#include <C_CkHttpW.h> #include <C_CkHttpRequestW.h> #include <C_CkHttpResponseW.h> #include <C_CkFileAccessW.h> void ChilkatSample(void) { HCkHttpW http; const wchar_t *jsonStr; HCkHttpRequestW req; HCkHttpResponseW resp; const wchar_t *responseBody; HCkFileAccessW fac; const wchar_t *filepath; BOOL success; http = CkHttpW_Create(); jsonStr = L"{ some json ... }"; req = CkHttpRequestW_Create(); // This query parameter just happens to be named "json" and contains JSON text. CkHttpRequestW_AddParam(req,L"json",jsonStr); // We can optionally add more query parameters. CkHttpRequestW_AddParam(req,L"abc",L"123"); CkHttpRequestW_AddParam(req,L"xml",L"<abc>123</abc>"); // Note: Just because we passed a query param named "json" or "xml" means nothing special. It's still just // a name=value query parameter.. resp = CkHttpW_PostUrlEncoded(http,L"http://example.net/cirrus/connect/report",req); if (CkHttpW_getLastMethodSuccess(http) != TRUE) { wprintf(L"%s\n",CkHttpW_lastErrorText(http)); CkHttpW_Dispose(http); CkHttpRequestW_Dispose(req); return; } if (CkHttpResponseW_getStatusCode(resp) != 200) { wprintf(L"Hey, I didn't receive the expected response status code!\n"); wprintf(L"status code = %d\n",CkHttpResponseW_getStatusCode(resp)); } // Could be error text if the status code wasn't what we expected, or could be the response // body you're seeking.. responseBody = CkHttpResponseW_bodyStr(resp); wprintf(L"%s\n",responseBody); fac = CkFileAccessW_Create(); filepath = L"some file path"; success = CkFileAccessW_WriteEntireTextFile(fac,filepath,responseBody,L"utf-8",FALSE); if (success != TRUE) { wprintf(L"%s\n",CkFileAccessW_lastErrorText(fac)); } CkHttpW_Dispose(http); CkHttpRequestW_Dispose(req); CkFileAccessW_Dispose(fac); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.