Description
Currently the problem I'm having is that when building and sending a request, the AuthenticateRequest is called before the body is built and therefore the call to ClientRequest.GetBody() returns nil. This is problematic for things that want to insert headers and sign messages based on both the header and the body.
I have tested a fix where the AuthenticateRequest is moved to the end of buildHTTP and it worked for me. I'm not sure if there are implications to this. I see that this was originally addressed via #75 where there were multiple calls to AuthenticateRequest added in buildHTTP, one of which was at the beginning and one at the end. Now there is only a single call but I have not been able to decipher when or why it was changed from that point. Maybe @tamalsaha is aware?
I can generate a simple PR to further the discussion with a more concrete proposal.