Напомним, что этот проект строится на следующем стартовом проекте Glitch или клонируется из GitHub . Основной путь такого рода аутентификации будет следовать в вашем приложении:
passport.authenticate('github')
который перенаправляет их в GitHub. process.env.GITHUB_CLIENT_ID
. Для этой задачи мы собираемся использовать стратегию GitHub. Получение идентификатора клиента и секретности из GitHub выполняется в настройках профиля вашего аккаунта в разделе «Настройки разработчика», а затем « Приложения OAuth ». Нажмите «Зарегистрировать новое приложение», назовите свое приложение, вставьте URL-адрес на свою страницу с глюком ( не URL-адрес кода проекта ) и, наконец, URL-адрес обратного вызова, вставьте тот же URL-адрес, что и на главной странице, но с помощью «/ auth / github / callback '. Здесь пользователи будут перенаправлены на нас для обработки после проверки подлинности на GitHub. Сохраните возвращаемую информацию как «GITHUB_CLIENT_ID» и «GITHUB_CLIENT_SECRET» в вашем .ENV-файле. В вашем ремикс-проекте создайте 2 маршрута, принимающих запросы GET: / auth / github и / auth / github / callback. Первый должен только называть паспорт для аутентификации «github», а второй должен вызывать паспорт для аутентификации «github» с перенаправлением отказа на «/», а затем, если это успешно перенаправляется на «/ profile» (аналогично нашему последнему проекту). Пример того, как выглядит '/ auth / github / callback', аналогичен тому, как мы обрабатывали обычный логин в нашем последнем проекте: app.route ( '/ Войти') .post (passport.authenticate ('local', {failRedirect: '/'}), (req, res) => { res.redirect ( '/ профиль'); });Представьте свою страницу, когда вы думаете, что у вас все в порядке. Если вы работаете в ошибки, вы можете проверить проект до этого момента здесь .