Neueste Themen-API-Pagination

Hallo zusammen!

Ähnlich wie in diesem Thema suche ich nach der richtigen Methode, um die Paginierung am Endpunkt /latest.json (Topics) durchzuführen, insbesondere um zu wissen, wann die letzte Seite erreicht ist.

Ich habe herausgefunden, dass die Antwort, wenn weitere Ergebnisse abgerufen werden können, ein "more_topics_url": "/latest?page=X" für die nächste Seite enthält. Allerdings scheint es nach meinen Tests so zu sein, dass wir auch dann, wenn keine weiteren Ergebnisse vorhanden sind, unter diesem Feld eine weitere Seite erhalten.

Gibt es eine korrekte Möglichkeit zu erkennen, wann die letzte Seite erreicht ist?

Vielen Dank im Voraus!

I can’t reproduce this.

For example, you can request

https://meta.discourse.org/c/site-feedback/blog/l/latest.json?page=1

that contains 30 topics and a more_topics_url with "/c/site-feedback/blog/l/latest?page=2".

Then you request that and get 25 more topics and a missing more_topics_url because it’s the end.

2 „Gefällt mir“

Thanks for such quick response and for checking it out!

You’re right. I was messing on my development environment on the per_page settings trying to avoid creating 30+ topics to test this, and came across this method, but changing it there seems to have the side-effect I mentioned, though returning the amount of results I set there.

Seems like passing ?per_page=X doesn’t have any effect on this endpoint (following your example: https://meta.discourse.org/c/site-feedback/blog/l/latest.json?page=1&per_page=5, still returns 30 rows). Is there a proper way to adjust this setting?

Thanks again in advance!

2 „Gefällt mir“

Hat jemand dieses Problem schon gelöst?

Wäre auch an diesem per_page-Ding interessiert.

1 „Gefällt mir“