Я пишу экспресс-приложение, и я должен аутентифицировать пользователя, используя поток oauth 2.0. Я успешно перенаправил пользователя поставщику oauth, и поставщик отправил токен доступа в oauth callback. Что-то вродеАнализ фрагмента URL-адреса в экспресс-приложении
http://localhost:4000/oauth/callback#access_token=<token>
Теперь у меня есть экспресс-обработчик маршрута как
app.get('/oauth/callback', function(req, res, next) {
});
Я знаю, что фрагмент хэш не передается на сервер, но это OAuth обратного вызова.
Как я могу получить фрагмент хэша url в обработчике маршрута?
«Я знаю, что хэш-фрагмент не передан серверу» - остановитесь прямо там. Если кто-то отправляет фрагмент через HTTP, обратный вызов или нет, они нарушают протокол, и библиотеки не должны это учитывать. Используйте обычный параметр GET: 'http: // localhost: 4000/oauth/callback? Access_token ='. –
Amadan
@ Амадан - это ошибка в [contentful] (https://www.contentful.com/developers/docs/references/authentication), и я не понимаю, почему это так. Это любитель. – Syed
URL-адрес содержит параметр «access_token». Это означает, что вы использовали Implicit Flow. В Implicit Flow параметры должны быть встроены в часть фрагмента. Это НЕ ошибка сервера OAuth. –