![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) HTTP PUT JSONDemonstrates how to send a JSON PUT and get the JSON response body. Note: This example requires Chilkat v11.0.0 or greater.
#include <C_CkHttpRequestW.h> #include <C_CkHttpW.h> #include <C_CkHttpResponseW.h> void ChilkatSample(void) { BOOL success; HCkHttpRequestW req; HCkHttpW http; const wchar_t *jsonText; HCkHttpResponseW resp; success = FALSE; // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. req = CkHttpRequestW_Create(); http = CkHttpW_Create(); // The PUT request to be sent will look like this: // PUT /request HTTP/1.1 // Content-Type: application/jsonrequest // Cookie: JSESSIONID=1234 // Content-Encoding: identity // Host: json.penzance.org // Accept: application/jsonrequest // Accept-Encoding: // Content-Length: 72 // // {"user":"doctoravatar@penzance.com","forecast":7,"t":"vlIj","zip":94089} // First, remove default header fields that would be automatically // sent. (These headers are harmless, and shouldn't need to // be suppressed, but just in case...) CkHttpW_putAcceptCharset(http,L""); CkHttpW_putUserAgent(http,L""); CkHttpW_putAcceptLanguage(http,L""); // Suppress the Accept-Encoding header by disallowing // a gzip response: CkHttpW_putAllowGzip(http,FALSE); // If a Cookie needs to be added... CkHttpW_SetRequestHeader(http,L"Cookie",L"JSESSIONID=1234"); // Add the Content-Encoding: identity header. CkHttpW_SetRequestHeader(http,L"Content-Encoding",L"identity"); // Modify the default "Accept" header: CkHttpW_putAccept(http,L"application/jsonrequest"); jsonText = L"{\"user\":\"doctoravatar@penzance.com\",\"forecast\":7,\"t\":\"vlIj\",\"zip\":94089}"; // IMPORTANT: Make sure to change the URL, JSON text, // and other data items to your own values. The URL used // in this example will not actually work. resp = CkHttpResponseW_Create(); success = CkHttpW_HttpStr(http,L"PUT",L"http://json.penzance.org/request",jsonText,L"utf-8",L"application/jsonrequest",resp); if (success == FALSE) { wprintf(L"%s\n",CkHttpW_lastErrorText(http)); CkHttpRequestW_Dispose(req); CkHttpW_Dispose(http); CkHttpResponseW_Dispose(resp); return; } wprintf(L"Response status code: %d\n",CkHttpResponseW_getStatusCode(resp)); wprintf(L"Response JSON:\n"); wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp)); CkHttpRequestW_Dispose(req); CkHttpW_Dispose(http); CkHttpResponseW_Dispose(resp); } |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.