Не удалось загрузить объект с предварительно подписанным URL-адресом Minio Python

я использую сервер Minio для обработки файлов в моем API Flask. Я создаю предварительно подписанный URL-адрес для загрузки изображений непосредственно из Angular FrontEnd, чтобы сэкономить ресурсы Backend.

Presign Url Generation работает нормально, но когда я загружаю свой файл из Postman или Angular Code, файл кажется поврежденным.

Почтальон получает результат

То же самое в веб-браузере Minio

Снимок экрана веб-браузера Minio

Я использую простой код для генерации предварительно подписанного URL:

    def get_presigned_get_url(self, bucket: str, object_path: str) -> str:
    url = self.client.presigned_get_object(
        bucket_name=bucket,
        object_name=object_path,
    )
    return url

def get_presigned_put_url(self, bucket: str, object_path: str) -> str:
    url = self.client.presigned_put_object(
        bucket_name=bucket,
        object_name=object_path,
    )
    return url

И запрос PUT на Postman

Запросы PUT почтальона

Спасибо за вашу помощь


person Raphaël Courivaud    schedule 20.01.2021    source источник


Ответы (1)


Ключевым в данном случае является способ загрузки файла с почтальона. При загрузке файла вам нужно использовать Body › Binary › Select File, а не Body › Form-Data.

Скриншот

person Amaresh Kulkarni    schedule 28.02.2021