Gibt es eine Möglichkeit, Informationen über den aktuell angemeldeten Benutzer in Discourse aus meiner React SPA ohne Seitenneuladung zu erhalten?
Hmm, würde die Route /session/current.json hier funktionieren? ![]()
Ich habe versucht, eine GET-Anfrage zu senden, aber sie gab 404 zurück.
Ich glaube, Sie benötigen Discourse Connect, damit beide Websites bei derselben SSO-Quelle angemeldet sind.
Ich versuche nur, den aktuell angemeldeten Benutzernamen zu erhalten. Kein Anmelden erforderlich.
Das ist der Punkt. Wenn Sie nicht in Discourse angemeldet sind, gibt diese Route eine 404 zurück.
In einem anderen Browser, in dem ich nicht angemeldet bin:
Ist das nicht das, was Sie wollen? ![]()
Es funktioniert, wenn ich die API-Anfrage innerhalb meines Forums sende. Aber nicht von meiner React-Website, die im selben Browser läuft.
Was Sinn macht, da diese React-Website nicht über die relevanten Anmeldeinformationen für die Anfrage verfügt und diese auch nicht erhalten kann, und sie sollte sie auch nicht erhalten können. Das wäre ein extremes Sicherheitsproblem, wenn sie es könnte. Ich empfehle, wie oben erwähnt, Discourse Connect einzurichten.
Ich verwende bereits Discourse Connect, wo ich Mitgliedern einer bestimmten Gruppe erlaube, sich mit Discourse auf meiner Website anzumelden.
Ich habe einen Composer direkt in meiner React-App, der es Benutzern ermöglicht, Themen direkt von meiner React-App aus zu erstellen, ohne ein Konto in meiner React-App erstellen zu müssen. Daher muss ich die Benutzerinformationen des Benutzers kennen, der in Discourse angemeldet ist.
Das Problem mit SSO ist, dass es einen vollständigen Seiten-Reload erfordert, den ich vermeiden muss, damit meine Funktion funktioniert.
Ich glaube nicht, dass das möglich ist, aber vielleicht kann Ihnen jemand anderes helfen und mich eines Besseren belehren.
Sie möchten sicherstellen, dass Sie keine API-Aufrufe über ein JavaScript-Frontend mit einem API-Schlüssel tätigen.
Sicher, ich verwende in diesem Fall Serverkomponenten. Danke für Ihren Vorschlag.

