Unterkategorie Name

Wenn ich eine GET-Anfrage an categories.json sende, erhalte ich die subcategoryIds für jede Kategorie. Wie kann ich jedoch die entsprechenden Namen der Unterkategorien über die API abrufen?

Im Wesentlichen möchte ich den Namen und die ID aller Kategorien bzw. Unterkategorien erhalten.

Dieser Beitrag könnte für Sie nützlich sein Reverse engineer the Discourse API

1 „Gefällt mir“

Ich kann die entsprechenden Namen der Unterkategorien nicht finden. Ich habe versucht, die vollständige Antwort auf die GET-Anfrage an /categories.json zu analysieren, aber ich sehe kein Feld, das mir den Namen der Unterkategorie liefert.

danke für die Antwort. Der Blick auf den Reverse-Engineering-Leitfaden hilft mir ehrlich gesagt nicht wirklich, da ich vermute, dass hier etwas Magisches im Spiel ist.

Könntest du bitte genau herausfinden, wie die Unterkategoriennamen aus dieser JSON-Antwort gerendert werden? Ich sehe auch keine relevanten nachfolgenden Aufrufe, die diese IDs möglicherweise in tatsächliche Namen auflösen könnten. Das Ziel ist es, eine Liste von Kategorien und Unterkategorien zu erstellen, die ich dann mit benutzerdefiniertem Markup frei positionieren kann. Jede Hilfe wird geschätzt.

Ich frage mich, ob hier discourse/app/assets/javascripts/discourse/tests/helpers/create-pretender.js at 928f1025166681105084a46ee733bfb08ca8d5e4 · discourse/discourse · GitHub die „create-pretenders" eine Rolle spielen, um Namen magisch aufzulösen?

Ich beantworte hier meine eigene Frage…

Alle Kategorien einer Site sind in /sites.json aufgeführt. Du kannst also /categories_and_latest für die Hauptkategorien verwenden, und sobald du die IDs der Unterkategorien für jede Hauptkategorie hast, nimmst du den Unterkategorienamen aus der Antwort von /sites.json.

Ich gehe davon aus, dass es einige Eigenschaften in sites.json gibt, die eine Kategorie als Haupt- oder übergeordnete Kategorie identifizieren, sodass am Ende /sites.json möglicherweise ausreicht (eine Anfrage). Das habe ich noch nicht getestet.