Проблемы с AWS Glacier Golang с контрольными суммами при многоэтапной загрузке - PullRequest
0 голосов
/ 11 декабря 2019

При попытке выполнить многоэтапную загрузку в AWS Glacier выдается следующее сообщение:

Invalid x-amz-sha256-tree-hash: cd75dd9eca76a86dda2479831bf470d053195d5185c4da45be694e3cffd308a7

Когда я запускаю sha256sum для файла из командной строки, он возвращаетта же контрольная сумма:

cd75dd9eca76a86dda2479831bf470d053195d5185c4da45be694e3cffd308a7 ./test.mp4

Что я здесь не так делаю?

Я генерирую контрольную сумму и завершаю загрузку следующим образом:

    h := sha256.New()

    _, err = io.Copy(h, bytes.NewReader(dat))
    if err != nil {
        log.Fatal(err)
    }

    checksum := fmt.Sprintf("%x", h.Sum(nil))
// This displays: Checksum:cd75dd9eca76a86dda2479831bf470d053195d5185c4da45be694e3cffd308a7
    fmt.Println("Checksum: ", checksum) 


    _, err = glacierClient.CompleteMultipartUpload(&glacier.CompleteMultipartUploadInput{
        AccountId:   aws.String("-"),
        UploadId:    initiateResult.UploadId,
        VaultName:   aws.String("some-test-vibrant-glacier-vault"),
        ArchiveSize: aws.String(fmt.Sprintf("%d", len(dat))),
        Checksum:    aws.String(checksum),
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...