/t/slug/123.json?post_number=10 erhält den 5. Beitrag. /t/slug/123.json?post_number=50 erhält den 45. Beitrag usw. Es ist durchgehend um 5 versetzt. Wenn Sie alle Beiträge erhalten möchten, müssen Sie Pagination verwenden, und wenn Sie dies nicht berücksichtigen, erhalten Sie eine inkorrekte Liste.
Ich kann nur vermuten, dass dies gemacht wurde, um einige vorherige Beiträge zum Kontext einzuschließen. Falls ja, sollte das meiner Meinung nach in der Benutzeroberfläche und nicht in der API erfolgen.
Als Single-Page-Anwendung nutzt Discourse seine API effizient, um den Aufwand zu minimieren. Es ist nicht sinnvoll, einen API-Aufruf pro Beitrag zu tätigen; das würde die Menge an Hin- und Her-Kommunikation zwischen Client und Server massiv aufblähen.
Es ist trivial, den erwarteten Beitrag aus dem Ergebnis auszuwählen. Wie oben, nur den gekochten Inhalt von Beitrag 40 abrufen:
○ → curl -s 'https://meta.discourse.org/t/fkb-pro-social-theme/234323.json?post_number=40' | jq -r '.post_stream.posts[] | select(.post_number == 40) | .cooked'
<p>Hi Tiago,</p>
<p>Können Sie das bitte ein wenig verdeutlichen? Einige Screenshots, Ihr tatsächlicher Code und wo Ihre Anzeige erscheint, wären sehr hilfreich. Vielen Dank <img src="https://emoji.discourse-cdn.com/twitter/slightly_smiling_face.png?v=12" title=":slightly_smiling_face:" class="emoji" alt=":slightly_smiling_face:" loading="lazy" width="20" height="20"></p>
Oder, wenn Sie unbedingt Informationen nur über den einzelnen Beitrag zurückgeben möchten, den Sie abfragen, können Sie eine Data Explorer-Abfrage erstellen, die nur das tut.