Загрузка Python3 в AWS WorkDocs
У кого-нибудь есть пример кода для загрузки в WorkDocs с Python? В кратком руководстве сказано, что я должен быть в состоянии PUT с помощью "Content-Type","application/octet-stream", но
r= requests.put(url, upfile)
upfile={'file': ('file.pdf', open('file.pdf', 'rb'), 'application/octet-
stream')}
выдает ошибку начала:
<Error><Code>SignatureDoesNotMatch</Code><Message>The request signature we
calculated does not match the signature you provided. Check your key and
signing method.</Message> ...
Я вижу, что быстрый запуск предлагает свойства "x-amz-server-side-encryption", "AES256". Как мне установить это в запросах? Нужна ли мне какая-то другая библиотека?
1 ответ
Наконец, выяснилось: когда вы инициируете InitiateDocumentVersionUpload, WorkDocs хочет, чтобы вы возвращали заголовки и подписанный ключ, указанные в ответе.
Я думал, что Бото использует мои ключи IAM для шифрования ответа и докажет, что я авторизованный пользователь. Но это переосмысление этого. WorkDocs ожидает, что вы имитируете заголовки, включая подписанный ключ, данный вам.