ошибка в стратегии Github oAuth с использованием паспорта

Я столкнулся с ошибкой при написании кода после прочтения документации формы паспорт-стратегия github. Я думаю, я реализовал ее лучше всего со своей стороны, но все же это ошибка, что неизвестная стратегия аутентификации github

Вот мой файл или контроллер Passport.js

const mongoose = require('mongoose')
const User = require("./models/user")
var GitHubStrategy = require('passport-github').Strategy;

module.exports = function (passportt) {
    passport.use(new GitHubStrategy(
        {
            clientID: process.env.GITHUB_CLIENT_ID,
            clientSecret: process.env.GITHUB_CLIENT_SECRET,
            callbackURL: "http://localhost/5000/api/login/github/callback"
        },


        async (accessToken, refreshToken, profile, done) => {
            const newUser = {
                githubId: profile.id,
                displayName: profile.displayName,
                firstName: profile.name.givenName,
                lastName: profile.name.familyName,

            }

            try {
                let user = await User.findOne({ githubId: profile.id })

                if (user) {
                    done(null, user)
                } else {
                    user = await User.create(newUser)
                    done(null, user)
                }
            } catch (err) {
                console.error(err)
            }
        }
    )
    )

    passport.serializeUser((user, done) => {
        done(null, user.id)
    })

    passport.deserializeUser((id, done) => {
        User.findById(id, (err, user) => done(err, user))
    })
}

и вот мой маршрут для этого

router.get("/auth/github", passport.authenticate('github'))

router.get("/auth/github/callback", passport.authenticate('github', { failureRedirect: '/login' }), (req, res) => {
    res.redirect("/users")
})


module.exports = router;

Тем не менее, если я попытаюсь получить доступ к маршруту входа в github, я столкнусь с ошибкой.

0 ответов

Другие вопросы по тегам