Пример URL-адреса: https://xxxxxxxxxx.s3.amazonaws.com/xxxx-xxxx-xxxx-xxxx/xxxxxxxxxxxxx/x?AWSAccessKeyId=AKIAIFKEBR4CLVTDYSLA&Signature=Kv%2B859dJ2eUmLgHdkT%2F625EeD1E1E1D1

Я пытался декодировать% XX, но безуспешно.

Также я попробовал aws s3 cp s3://xxxxxxxxxx/xxxx-xxxx-xxxx-xxxx/xxxxxxxx... - --recursive но Streaming currently is only compatible with non-recursive cp commands - мне нужно передавать несколько файлов из S3.

Используя wget я получаю те же 403.

URL от s3_client.generate_presigned_url .

2 ответа2

0

Используйте одинарные кавычки, чтобы убедиться, что любые потенциально специальные символы воспринимаются буквально.

[user@localhost ~]# curl 'https://xxxxxxxxxx.s3.amazonaws.com/xxxx-xxxx-xxxx-xxxx/xxxxxxxxxxxxx/x?AWSAccessKeyId=AKIAIFKEBR4CLVTDYSLA&Signature=Kv%2B859dJ2eUmLgHdkT%2F9nUJEeRM%3D&Expires=1922517562'

Ключ одинарные кавычки.

-1

Ага, я обнаружил, что curl может загружать URL без кавычек (/ вместо% 2F), когда такой URL в "двойных кавычках".

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .