In diesem Artikel erklären wir, wie Sie eine Pre-request einrichten, um ein OAuth 2.0-Zugriffstoken für die Verbindung zu einer API über ein API Gateway abzurufen.
Das OptiSigns API Gateway ermöglicht die OAuth-Authentifizierung über Pre-request. Dies gibt Benutzern die Möglichkeit, APIs zu nutzen, die eine OAuth-Authentifizierung oder ähnliches erfordern.
Um zu beginnen, müssen Sie eine API-Anfrage einrichten. Bewegen Sie den Mauszeiger über Kontoname → Mehr → Klicken Sie auf Datenquellen:
Klicken Sie dort auf Anfrage hinzufügen.
Erstellen Sie eine GET-Anfrage und geben Sie Ihren API-Endpunkt ein, dann klicken Sie auf Pre-request:
Geben Sie im Pre-request-Feld den folgenden Code ein:
const body = {
"grant_type": "client_credentials",
"client_id": "<CLIENT_ID>",
"client_secret": "<CLIENT_SECRET>"
};
const params = Object.keys(body || {}).map((key) => {
return key + '=' + body[key];
}).join('&');
const {data, headers} = await os.postRequest("<OAUTH_AUTHENTICATION_URL>", params,{headers: {'content-type': 'application/x-www-form-urlencoded'}});
const token = 'Bearer' + data.access_token;
os.context.set("request.headers.authorization", token);
Hinweise:
- "grant_type": Verwenden Sie "client_credentials", da "client_credentials" der Grant-Typ in OAuth für die serverseitige Integration ohne Benutzerinteraktion ist.
- <CLIENT_ID> und <CLIENT_SECRET> beziehen sich auf den Code des Benutzers für die aufgerufene API. Diese müssen vom Benutzer bereitgestellt werden.
- <OAUTH_AUTHENTICATION_URL> bezieht sich auf die URL, von der das Zugriffstoken abgerufen wird. Diese URL muss vom Benutzer bereitgestellt werden.
Konfigurieren Sie nun den Header:
Nachdem Sie diese und die übrigen erforderlichen Felder ausgefüllt haben, ist Ihre Pre-request ordnungsgemäß konfiguriert. Ein Klick auf Test ausführen sollte eine 200 OK-Antwort zurückgeben.
Wenn ja, klicken Sie auf Speichern, um Ihre API-Anfrage abzuschließen.
Das ist alles!
Wenn Sie weitere Fragen, Anliegen oder Feedback zu OptiSigns haben, wenden Sie sich gerne an unser Support-Team unter support@optisigns.com.