Unicode C
Unicode C
HTTP POST with Binary Data in Request Body
See more HTTP Examples
Do an HTTPS POST with a binary request body.Chilkat Unicode C Downloads
#include <C_CkHttpW.h>
#include <C_CkFileAccessW.h>
#include <C_CkByteData.h>
#include <C_CkHttpResponseW.h>
void ChilkatSample(void)
{
BOOL success;
HCkHttpW http;
HCkFileAccessW fac;
HCkByteData reqBody;
HCkHttpResponseW resp;
int responseStatusCode;
success = FALSE;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttpW_Create();
fac = CkFileAccessW_Create();
reqBody = CkByteData_Create();
success = CkFileAccessW_ReadEntireFile(fac,L"qa_data/pdf/helloWorld.pdf",reqBody);
resp = CkHttpResponseW_Create();
success = CkHttpW_HttpBinary(http,L"POST",L"https://example.com/something",reqBody,L"application/pdf",resp);
if (success == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
CkHttpW_Dispose(http);
CkFileAccessW_Dispose(fac);
CkByteData_Dispose(reqBody);
CkHttpResponseW_Dispose(resp);
return;
}
responseStatusCode = CkHttpResponseW_getStatusCode(resp);
wprintf(L"Status code: %d\n",responseStatusCode);
// For example, if the response is XML, JSON, HTML, etc.
wprintf(L"response body:\n");
wprintf(L"%s\n",CkHttpResponseW_bodyStr(resp));
CkHttpW_Dispose(http);
CkFileAccessW_Dispose(fac);
CkByteData_Dispose(reqBody);
CkHttpResponseW_Dispose(resp);
}