PUThttp.NewRequestbodyio.Readeros.Filebody
file, _ := os.Open(filePath)

// request, _ := http.NewRequest("PUT", myURL, file)
// ^^^ why does this not work???

var buf bytes.Buffer
tee := io.TeeReader(file, &buf)
ioutil.ReadAll(tee)                                 
request, _ := http.NewRequest("PUT", myURL, &buf)   // this works fine

request.Header.Set("Content-Type", "application/octet-stream")
http.DefaultClient.Do(request)
ContentLength
ContentLength