Я пытаюсь реализовать социальный логин на стороне сервера, используя Auth0, и я застрял с шагом 3 из this guide. Я получаю обратный вызов из предыдущих шагов со значением http://mywebsite/login?code=bLvc4EmsaezBp1sN&state=UXZ8DfOZeRNGy4AKD4DsaS0n#_=_
, но когда я отправляю значение code
на моем сервере в конечную точку Auth0 /oauth/token
, я получаю ответ {"error":"invalid_grant","error_description":"Invalid authorization code"}
.Auth0 0Auth Social Flow - недействительный код авторизации
Из примеров, которые я видел, я считаю, что мой код слишком короткий. Что я здесь делаю неправильно?
Wreck.post(`https://company-dev.eu.auth0.com/oauth/token`, {
payload: {
client_id: client_id, // rknvAeGruVDG3To0Lc37hMuDKsUNBBBV (too short?)
code: code, // Sl9fF6grhgDoecDt
redirect_uri: redirect_uri, // http://localhost:3000/login
grant_type: grant_type, // 'authorization_code'
client_secret: client_secret, // Shh, secret
state: state // 123ABC123
}
}, (err, res, payload) => {
if (err) {
console.log(err);
reject();
}
console.log(payload.toString('utf8'));
resolve();
});
Редактировать: Поскольку реализована ошибка моих способов, и параметры были перемещены в URL.
Теперь я получаю ошибку Unauthorized
Можете ли вы опубликовать свой код и/или тело POST, которое вы отправляете в/oauth/token БЕЗ вашего секретариата клиента? – neverendingqs
@neverendingqs Обновлен OP! –
«Полезная нагрузка» автоматически преобразуется в 'application/x-www-form-urlencoded' (а не' application/json'?) – neverendingqs