Вернуть изображение GIF с Hug API (изображение не анимируется в браузере)

Привет у меня есть следующий код

    @hug.get('/getgif', output=hug.output_format.image('gif'))
    def get(username: str, password: str):
        dir_path = os.path.dirname(__file__)
        img_path = os.path.join(dir_path, 'animation.gif')
        img = Image.open(img_path)
        return img

Я использую hug, python3 и PIL для создания ответа. Изображение, возвращаемое в мой браузер, не анимируется вообще. Я предполагаю, что PIL берет только первый кадр изображения GIF и возвращает его. Есть ли альтернатива для потоковой передачи всего изображения GIF обратно в браузер?

1 ответ

Вам не нужно загружать GIF с PIL. Вам просто нужно дать функции правильный выходной формат и вернуть путь к файлу изображения. Посмотрите на этот пример:

@hug.get('/images', output=hug.output_format.file)
def get_image(name: str):
    img_file = os.path.join(IMG_ROOT_DIR, name) # type: str
    return img_file
Другие вопросы по тегам