С привилегиями администратора. Когда я делаю вызов API /t/{}.json, я вижу только 20 постов. Есть ли какая-то настройка, которая покажет мне все мои посты по этой теме?
В возвращаемом JSON-объекте есть поле с URL для загрузки следующей партии постов. Получить все посты через API сразу невозможно.
Спасибо за ваш ответ.
Это интересно… Я не вижу такого поля в моем JSON-ответе. Оно было добавлено в какой-то конкретной версии API Discourse?
Я сейчас использую v 2.5
Возможно, я ошибаюсь насчёт этого конкретного момента. Следующий шаг — открыть инструменты разработчика браузера на вкладке Network и посмотреть, какие запросы отправляются при загрузке следующей порции постов в интерфейсе. Это должно дать некоторые подсказки ![]()
Посмотрите
Также флаг print=true — это ещё один вариант получения более 20 постов.
Спасибо, Блейк!
Насчёт print=true. Я читал в одном из других постов, что есть ограничение в 1000 постов.
Это так, но вы можете добавить &page=2, чтобы получить посты с 1001 по 2000, &page=3 — для постов с 2001 по 3000 и так далее, чтобы получить все посты. Вам потребуется выполнить некоторые вычисления со значением posts_count в JSON, чтобы определить количество страниц.
Спасибо, Клавдия, за предложение.