Ich versuche, eine Google OAUTH 2.0-Anmeldung zu implementieren, ohne Bibliotheken in meiner Node.js-Anwendung zu verwenden.Wie man sich mit Google anmeldet?
Ich habe eine App auf der Google API-Konsole mit der Weiterleitungs-URL als http://localhost:3000
erstellt. Während der Anmeldung ist mein response_type
code
, der einen einmaligen Verwendungscode zurückgibt, der mit dem token_endpoint wie beschrieben here ausgetauscht werden muss. Der Austausch erfolgt auf meinem node.js Server mit dem folgenden Snippet.
axios({
url: 'https://www.googleapis.com/oauth2/v4/token',
method: 'post',
data: {
code: code,
client_id: sso.clientId,
client_secret: sso.clientSecret,
redirect_uri: sso.redirect_uri,
grant_type: 'authorization_code',
}
})
.then((response) => {
console.log(response.data);
})
.catch(function(err) {
console.log(err.response.data);
});
{
"error": "unsupported_grant_type",
"error_description": "Invalid grant_type: "
}
anstelle des Benutzertoken eine Fehlerantwort von zurück.
Bitte helfen Sie mir, das Problem zu identifizieren.
Ich habe versucht, eine POSTMAN Abfrage auch mit der gleichen Nutzlast in der raw
mit Content-Typ auf application/json
festgelegt, und es gab mir den gleichen Fehler.
können Sie bestätigen, dass andere Felder in der POST-Anforderung wie die 'client_id, client_secret, redirect_uri' sind richtig? –
Ja. Die gleichen Credits funktionieren, wenn ich mich anmelde, um den 'Code' zu erhalten. – jagzviruz