C
C
HttpPostJson2 Example
See more HTTP Examples
Demonstrates use of the HttpPostJson2 method.Chilkat C Downloads
#include <C_CkHttp.h>
#include <C_CkHttpResponse.h>
#include <C_CkJsonObject.h>
void ChilkatSample(void)
{
BOOL success;
HCkHttp http;
const char *jsonBody;
HCkHttpResponse resp;
int statusCode;
HCkJsonObject json;
success = FALSE;
// This requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code
// See PostJson2Async Example for the async equivalent of this example.
http = CkHttp_Create();
// Sends a POST equivalent to the following CURL command:
// curl -X POST https://sandbox.plaid.com/institutions/get \
// -H 'content-type: application/json' \
// -d '{
// "client_id": String,
// "secret":String,
// "count": Number,
// "offset": Number
// }'
// Suppress some default headers that would automatically added..
CkHttp_putAcceptCharset(http,"");
CkHttp_putUserAgent(http,"");
CkHttp_putAcceptLanguage(http,"");
CkHttp_putAllowGzip(http,FALSE);
jsonBody = "{\"client_id\": \"PLAID_CLIENT_ID\", \"secret\":\"PLAID_SECRET\", \"count\": 10, \"offset\": 0}";
resp = CkHttp_PostJson2(http,"https://sandbox.plaid.com/institutions/get","application/json",jsonBody);
if (CkHttp_getLastMethodSuccess(http) == FALSE) {
printf("%s\n",CkHttp_lastErrorText(http));
CkHttp_Dispose(http);
return;
}
statusCode = CkHttpResponse_getStatusCode(resp);
printf("Response status code = %d\n",statusCode);
// Examine the JSON response..
json = CkJsonObject_Create();
CkJsonObject_Load(json,CkHttpResponse_bodyStr(resp));
CkJsonObject_putEmitCompact(json,FALSE);
printf("JSON Response Body:\n");
printf("%s\n",CkJsonObject_emit(json));
CkHttpResponse_Dispose(resp);
CkHttp_Dispose(http);
CkJsonObject_Dispose(json);
}