Wir erstellen eine benutzerdefinierte Integration für unsere selbst gehostete Discourse-Instanz innerhalb unserer App und möchten die Ergebnisse von https://docs.discourse.org/#tag/Categories/operation/listCategoryTopics filtern, um die neuesten und Top-Themen anzuzeigen. Derzeit ist die Paginierung auf 30 Indizes pro Seite beschränkt.
Wir müssen entweder:
- Die Ergebnisse filtern, sodass die zurückgegebenen 30 Indizes die neuesten oder Top-Themen sind (ideal)
- Die Paginierungsgrenze erhöhen, um diese Filterung/Sortierung auf dem Client durchzuführen (nicht ideal, aber würde funktionieren)
Vielen Dank im Voraus!
Hallo,
Ich glaube, Sie suchen Folgendes:
/c/{slug}/{id}/l/{filter}.json?{query}
Wobei:
{filter} ist entweder:
latest
unread
new
unseen
top
read
posted
bookmarks
{query} kann sein (wahrscheinlich nicht erschöpfend):
page=<int>
before=<timestamp>
bumped_before=<timestamp>
topic_ids=<id1[,id2, ..]>
order=<likes|op_likes|views|posts|activity|posters|category|created>
ascending=<true|false>
min_posts=<int>
max_posts=<int>
status=<open|closed|archived|listed|unlisted|deleted>
state=<muted|regular|normal|tracking|watching>
search=<term>
subset=<topics|replied>
tags=<tag1[,tag2,..]>
match_all_tags=<true|false>
no_subcategories=<true|false>
no_tags=<true|false>
exclude_tag=<tag>
Es scheint nicht möglich zu sein, die per_page mit der API zu ändern.
Sie können mit order spielen und mit page paginieren. Sie können die nächste zu verwendende URL mit more_topic_url erfahren, siehe unten im Antwortbeispiel:
Bemerkenswert: Experimental topics list filter feature
Ich hoffe, das hilft!