Как добавить изображения или файлы в будущую тему?
Вы решили эту проблему?
Вам следует загрузить файл и получить его URL, а затем опубликовать его.
r = requests.put()
p = "http:"+r.json()['url']
Привет! Я попробовал использовать стороннее облачное хранилище для изображений, а затем применял теги img для отображения контента в темах или постах, так как это экономит место на сервере.
Привет @FunnySmile, я пытаюсь вставить изображение с помощью тега img, как показано ниже, но оно не отображается?
<img src="https://unsplash.com/photos/JoZazcPhW5Y" />
Можете, пожалуйста, помочь?
Стоит отметить, что облачное хранилище изображений (cloud bed) обычно не разрешает вызовы со сторонних веб-сайтов. Как правило, часть облачных сервисов возвращает адрес изображения, и некоторые из них позволяют вызовы, а другие — нет. В таких случаях они обычно предоставляют специальные URL-адреса для тегов img. Если этого не происходит, возможно, облачное хранилище не разрешает вызовы со сторонних сайтов. В этом случае вы можете использовать режим разработчика в браузере, затем перейти на вкладку «Сеть» (Network), чтобы увидеть, какие ошибки возникают при загрузке изображений.
Вы можете просто добавить URL изображения без каких-либо HTML-тегов img:
https://unsplash.com/photos/JoZazcPhW5Y
как здесь:
https://unsplash.com/photos/JoZazcPhW5Y
и Discourse автоматически создаст для него превью. Но это даже не ссылка на само изображение, а ссылка на страницу на сайте unsplash.com. Вам нужно использовать прямую ссылку на изображение:
https://images.unsplash.com/photo-1658603458978-4a32b8cdadb7?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=3272&q=80
Если вы используете API, вы можете включить URL изображения в поле ‘raw’ сообщения.
Привет, @blake
Я попробовал, как вы и советовали. Вот тело моего POST-запроса:
Когда я посмотрел на пост, он выглядел так (показывается только ссылка, а не изображение). Если же я открываю ссылку в браузере, то изображение отображается:
С уважением,
Читта
Я тоже пытаюсь найти то же самое… разместить изображение в API постов. Хотя я следовал шагам для загрузки изображения и получения URL… но как нам отправить URL в полезной нагрузке? Отправляя его в поле raw, он публикуется в виде текста… есть ли способ добавить поле изображения в API постов? Пожалуйста, помогите.
Извините, но я пока не понимаю, что вы имеете в виду. Мое следующее решение — использовать стороннее облачное хранилище изображений для загрузки картинки, а затем вернуть URL-адрес изображения.
<img src="url" />
Верно. Передайте его в виде ссылки в формате Markdown.

Нет, потому что это тот же рабочий процесс, который используется в интерфейсе композера. Вам потребуется выполнить два вызова API: один для загрузки изображения и другой для включения URL в полезную нагрузку поста.
Да, верно, именно так я это реализовал… достаточно передать в поле raw API публикации строку: “[image|581x455(upload://c4MB1Yzppr5Omv68MoJBQINqqiB.png)]”. Здесь:
- image — любое имя, которое вы хотите присвоить;
- upload://c4MB1Yzppr5Omv68MoJBQINqqiB.png — это короткая ссылка, которую мы получаем при загрузке изображения через API загрузки.
Шаги:
- Сначала нужно загрузить изображение через API /upload.json.
- Затем передать короткую ссылку в указанном выше формате вместе с остальным содержимым поста в поле ‘raw’.
Спасибо за ваш ответ, @blake.



