# Сбой Onebox с ошибкой 429 всё равно должен создавать валидные теги \<img\>

**URL:** <https://meta.discourse.org/t/onebox-fail-with-429-error-should-still-create-valid-img-tags/273362>\
**Category:** Feature\
**Tags:** onebox\
**Created:** [31.Июль.2023 15:18:16 UTC](https://meta.discourse.org/t/onebox-fail-with-429-error-should-still-create-valid-img-tags/273362 "2023-07-31T15:18:16Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![rahim123](https://avatars.discourse-cdn.com/v4/letter/r/df705f/32.png) [@rahim123](https://meta.discourse.org/u/rahim123)\
**Post date:** [31.Июль.2023 15:18:16 UTC](https://meta.discourse.org/t/onebox-fail-with-429-error-should-still-create-valid-img-tags/273362/1 "2023-07-31T15:18:16Z")

</div>

На моём форуме Discourse пользователям рекомендуется по возможности использовать внешние хостинги изображений. Наиболее распространён Imgur, который со временем начинает ограничивать частоту запросов к серверу Discourse, возвращая ошибку 429. Хотя это неразрешимая проблема со стороны Imgur, сам Discourse также не обрабатывает её оптимально. В настоящее время, когда Imgur возвращает ошибку 429, Discourse интерпретирует её как некорректную ссылку на изображение и просто отображает URL изображения, оборачивая его в теги `<a>`. Однако ничто не мешает отдельным пользователям просматривать эти изображения прямо в интерфейсе Discourse, поскольку их браузер и IP-адрес отличаются. Discourse должен по-прежнему генерировать валидный HTML для отображения изображения. Например:

`https://i.imgur.com/eHltaVt.jpeg`  
Этот URL получает ограничение частоты запросов на моём сервере, и Discourse просто создаёт ссылку:  
`<a href="https://i.imgur.com/eHltaVt.jpeg" target="_blank" rel="noopener noreferrer" tabindex="-1">https://i.imgur.com/eHltaVt.jpeg</a>`

Однако следующий HTML отлично работает для отображения изображения в браузере конечного пользователя как в предпросмотре поста, так и в готовом посте:  
`<img src="https://i.imgur.com/eHltaVt.jpeg">`  
Именно такой HTML должен генерировать Discourse, даже если при обращении сервера к URL возвращается ошибка 429. Оставлять «голый» URL следует только в случае получения ошибки 404.

---

_[View the full topic](https://meta.discourse.org/t/onebox-fail-with-429-error-should-still-create-valid-img-tags/273362)._
