Hallo! Wenn du den Prozess für benutzerspezifische API-Schlüssel verwendest, um von Discourse einen benutzerspezifischen API-Schlüssel zu erhalten, ist es dann auch möglich, gleichzeitig den Benutzernamen des Nutzers zurückzubekommen?
Ich habe eine Lösung gefunden: Wenn Sie den Schlüssel besitzen, gibt die Discourse-API bei einem authentifizierten Aufruf als Header „x-discourse-username: username" zurück. Danke an @RGJ für den Hinweis.
Sie können also beispielsweise den Schlüssel von Discourse abrufen und diesen dann in einem API-Aufruf an einen Endpunkt wie /site.json verwenden.
Anschließend parsen Sie die Antwortheader, zum Beispiel so:
....then((response) => {
var headerResponseArray = (JSON.stringify(response.headers)).split(',')
headerResponseArray.forEach((h) => {
if (h.includes('x-discourse-username')) {
var userNameRaw = h.split(':')[1].trim()
}
})
})
Es wäre dennoch schneller, wenn ich direkt den Benutzernamen erhalten könnte, wenn Discourse den pro Benutzer bestimmten API-Schlüssel zurückgibt. Falls jemand eine Möglichkeit dafür kennt, lassen Sie es mich bitte wissen.