Sample code for 30+ languages & platforms
Go

Example: Http.KeepResponseBody property

Demonstrates the KeepResponseBody property.

Chilkat Go Downloads

Go
    success := false

    http := chilkat.NewHttp()

    http.SetAwsAccessKey("****")
    http.SetAwsSecretKey("****")

    http.SetKeepResponseBody(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 {
        fmt.Println("response status code = ", http.LastStatus())
        fmt.Println(http.LastResponseBody())
    } else {
        fmt.Println("Success: Bucket deleted.")
    }

    // 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>

    http.DisposeHttp()