Краткий ответ
Если URL изображения, переданный в API, заканчивается параметром обработки облачного хранилища, например?x-oss-process=..., API возвращает ошибку «содержимое изображения не соответствует MIME-типу».
Чтобы исправить это, удалите параметр обработки из URL и передайте в API исходную прямую ссылку либо скачайте изображение и повторно обработайте его на собственном сервере перед загрузкой.
Как выглядит ошибка?
Ответ с ошибкой:?x-oss-process=... — это параметр обработки изображений, используемый Alibaba Cloud OSS и аналогичными службами объектного хранения. Известно, что эндпоинты генерации изображений в APIYI возвращают указанную выше ошибку, если URL содержит параметр такого типа.
Известное имя параметра, вызывающее проблему
Сообщалось, что следующее имя параметра вызывает эту ошибку при наличии в URL изображения:x-oss-process
Шаги по исправлению
1
Удалите параметр обработки из URL
Скопируйте исходную прямую ссылку на изображение (без параметра типа на:
?x-oss-process=) и снова передайте её в API.Например, замените:2
Если требуется изменить размер, сначала обработайте изображение на своём сервере
Если ваш рабочий процесс действительно зависит от сжатия или обрезки на стороне OSS, сначала скачайте обработанное изображение из вашего бакета в локальное хранилище, а затем загрузите его через локальный путь или новую прямую ссылку без параметров.
Примечания
Если это по-прежнему не работает
- Убедитесь, что URL можно открыть напрямую в браузере, а фактический формат изображения, отображаемый браузером (щелчок правой кнопкой мыши → просмотр кода), соответствует расширению URL (jpg / png / webp)
- Если вы используете параметр обработки изображений от другого поставщика облачного хранилища, обратитесь в службу технической поддержки, предоставив полный JSON ошибки и идентификатор запроса