Ich habe die Schritte durchlaufen: Der Client generiert ein öffentliches/privates Schlüsselpaar und eine Rückgabe-URL, geht zu einer Discourse-Route, der Benutzer erteilt Discourse die Genehmigung, die App zu nutzen, und Discourse generiert einen API-Schlüssel.
Aber wenn Discourse den API-Schlüssel als „Payload
Es hat funktioniert. @RGJ hat folgenden hilfreichen Hinweis gegeben:
Wenn Discourse die Weiterleitung durchführt und den API-Schlüssel als Nutzlast in der Weiterleitungs-URL entschlüsselt, wird dieser Schlüssel einer URL-Codierung unterzogen. Um den tatsächlichen API-Schlüssel zu erhalten, müssen Sie die Nutzlast URL-decodieren. Das Ergebnis ist der korrekt funktionierende API-Schlüssel (der der Länge des Schlüssels entspricht, den Discourse auf dem Bildschirm anzeigt).
Hier habe ich die Schritte beschrieben, die ich befolge, um dies zum Laufen zu bringen: