Content-MD5 для AWS S3 Подписанный заголовок UploadPart - PullRequest
0 голосов
/ 07 февраля 2019

При использовании AWS MultipartUpload для загрузки деталей происходит сбой, если я добавляю заголовок md5.Может кто-нибудь сказать, правильно ли я вычисляю контрольную сумму?

Сейчас я просто использую CryptoSwift и получаю его таким образом

data.md5().base64EncodedString()

Где данные - это то, что я загружаю с помощью

Alamofire.upload(
  data, 
  to: presignedMultipartLink, 
  method: Alamofire.HTTPMethod.put, 
  headers: [
    "Content-Length": sizeOfPart, 
    "Content-MD5": data.md5().base64EncodedString()
  ])
  .uploadProgress{...}
  .response{...}

И еслиВынимаю заголовок Content-MD5, он работает как нужно.

Ответ xml, так как мне добавить заголовок md5?

<Error><Code>AccessDenied</Code><Message>There were headers present in the request which were not signed</Message><HeadersNotSigned>content-md5</HeadersNotSigned><RequestId>requestid</RequestId><HostId>hostid</HostId></Error>

1 Ответ

0 голосов
/ 08 февраля 2019

Мне нужно было включить в вызов getPresignedUrl в качестве параметра.Не может быть включено иначе.Бах ... один из тех дней.

...