Claerly not, but maybe...
Golang provides a very good support for the http client (and server). This is one of the first language to support http2 and the design of the API clearly shows their concern on having a fast http.
This is why they add
Accept-Econding: gzip automatically. That will dramatically reduce the size of the server response and then optimize the transfer.
But the gzip remains an option in http 1 and not all of the client will push this header to your server.
Note that the
Content-Type describes the type of data you are sending (here a tar.gz but could be
Accept-Encoding describes the way the data has been encoded for the transport
Go will take care of transparently handling the
Accept-Encoding for you because it is responsible of the transport of the data. Then it will be up to you to handle the
Content-Type because only you know how to give a sense to the content you received