Como lembrete, este projeto está sendo construído sobre o seguinte projeto inicial no Glitch , ou clonado a partir do GitHub . A última parte da configuração da autenticação do Github é criar a estratégia em si. Para isso, você precisará adicionar a dependência de 'passport-github' ao seu projeto e requerê-lo como GithubStrategy como const GitHubStrategy = require('passport-github').Strategy;
. Para configurar a estratégia do Github, você precisa dizer ao passport para usar um GithubStrategy instanciado, que aceita 2 argumentos: Um objeto (contendo clientID , clientSecret e callbackURL ) e uma função a ser chamada quando um usuário é autenticado com sucesso, o que determinaremos se o usuário for novo e quais campos salvar inicialmente no objeto de banco de dados do usuário. Isso é comum em muitas estratégias, mas algumas podem exigir mais informações, conforme descrito no README do github dessa estratégia específica. Por exemplo, o Google também exige um escopo que determine o tipo de informação que sua solicitação está pedindo e peça ao usuário que aprove esse acesso. A atual estratégia que estamos implementando tem seu uso descrito aqui , mas estamos passando por tudo isso aqui no freeCodeCamp! Veja como sua nova estratégia deve olhar neste ponto: passport.use (new GitHubStrategy ({
clientID: process.env.GITHUB_CLIENT_ID,
clientSecret: process.env.GITHUB_CLIENT_SECRET,
callbackURL: / * INSERIR URL DE CHAMADA INSERIDO NO GITHUB AQUI * /
}
function (accessToken, refreshToken, profile, cb) {
console.log (perfil);
// Lógica do banco de dados aqui com retorno de chamada contendo nosso objeto de usuário
}
));
Sua autenticação ainda não será bem-sucedida e, na verdade, lançará um erro, sem a lógica do banco de dados e o retorno de chamada, mas você deverá registrar no seu console seu perfil do Github, se tentar! Envie sua página quando achar que está certo.
## Instructions