Sample code for 30+ languages & platforms
C

Example: Http.KeepResponseBody property

Demonstrates the KeepResponseBody property.

Chilkat C Downloads

C
#include <C_CkHttp.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkHttp http;

    success = FALSE;

    http = CkHttp_Create();

    CkHttp_putAwsAccessKey(http,"****");
    CkHttp_putAwsSecretKey(http,"****");

    CkHttp_putKeepResponseBody(http,TRUE);

    //  Here we have a Chilkat method that sends a DELETE request and returns TRUE/FALSE for success/failure.
    //  If it fails we'll want to get the response status code and the response body.
    //  The response body will be available in the LastResponseBody property 
    //  because we set the KeepResponseBody property to TRUE.
    success = CkHttp_S3_DeleteBucket(http,"example");

    if (success == FALSE) {
        printf("response status code = %d\n",CkHttp_getLastStatus(http));
        printf("%s\n",CkHttp_lastResponseBody(http));
    }
    else {
        printf("Success: Bucket deleted.\n");
    }

    //  Running the code as-is with the invalid data will return a response body
    //  that shows the error.

    //  response status code = 403
    //  <?xml version="1.0" encoding="UTF-8"?>
    //  <Error>
    //    <Code>InvalidAccessKeyId</Code>
    //    <Message>The AWS Access Key Id you provided does not exist in our records.</Message>
    //    <AWSAccessKeyId>****</AWSAccessKeyId>
    //    <RequestId>Y1REHYF8B7M3E771</RequestId>
    //    <HostId>i3nf+VEHKqJ+roMNTFcQvWAbXre/wl5icQxuAN1Qsscm9iI/y8IO4z3QNxUefhcCE7hgrS8dNn9OBvKCeB3WccGLe318A4DFUQDPb11WmIg=</HostId>
    //  </Error>


    CkHttp_Dispose(http);

    }