Sample code for 30+ languages & platforms
C++

Example: Http.KeepResponseBody property

Demonstrates the KeepResponseBody property.

Chilkat C++ Downloads

C++
#include <CkHttp.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkHttp http;

    http.put_AwsAccessKey("****");
    http.put_AwsSecretKey("****");

    http.put_KeepResponseBody(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 = http.S3_DeleteBucket("example");

    if (success == false) {
        std::cout << "response status code = " << http.get_LastStatus() << "\r\n";
        std::cout << http.lastResponseBody() << "\r\n";
    }
    else {
        std::cout << "Success: Bucket deleted." << "\r\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>
    }