Node.js 尝试使用React/express设置Github Passport2策略

Node.js 尝试使用React/express设置Github Passport2策略,node.js,reactjs,express,passport-github2,Node.js,Reactjs,Express,Passport Github2,我不确定我做错了什么我已经按照文档进行了操作,看起来我已经正确设置了所有内容,但它只是不想授予我访问令牌并重定向我!我是否需要从react路由器重定向到auth/github路由 如果您能帮我找到正确的方向并指出我的错误,我们将不胜感激 const GitHubStrategy=require('passport-local')。策略; //我的客户和秘密在空字符串中。 const GITHUB_CLIENT_ID=''; const GITHUB_CLIENT_SECRET=''; 常量GIT

我不确定我做错了什么我已经按照文档进行了操作,看起来我已经正确设置了所有内容,但它只是不想授予我访问令牌并重定向我!我是否需要从react路由器重定向到auth/github路由

如果您能帮我找到正确的方向并指出我的错误,我们将不胜感激

const GitHubStrategy=require('passport-local')。策略;
//我的客户和秘密在空字符串中。
const GITHUB_CLIENT_ID='';
const GITHUB_CLIENT_SECRET='';
常量GITHUB_CALLBACK_URL='/auth/GITHUB/CALLBACK';
passport.user(函数(用户,cb){
cb(空,用户);
});
passport.deserializeUser(函数(obj、cb){
cb(null,obj);
});
passport.use(
新战略(
{
clientID:process.env.GITHUB\u CLIENT\u ID,
clientSecret:process.env.GITHUB\u CLIENT\u SECRET,
callbackURL:process.env.GITHUB\u CALLBACK\u URL,
},
函数(accessToken、refreshToken、配置文件、cb){
日志(accessToken、refreshToken、profile);
返回cb(空,配置文件);
}
)
);
module.exports=GitHubStrategy;
const router=require('express')。router();
const db=require(“../models”);
路由器.get('/users',(req,res)=>{
db.User.find({
用户名:{$regex:newregexp(req.query.q,'i'),
}).然后(()=>console.log(req.params.q));
});
路由器。获取(
回调URL,
authenticate('github',{failureRedirect:'/login'}),
功能(req、res){
//身份验证成功,重定向到主页。
res.redirect('/home');
}
);
module.exports=路由器;
const express=require('express');
const session=require('express-session');
const passport=require('./config/GithubPassport2');
const apirouts=require(“./routes/apirouts”);
常量app=express();
const db=需要('./型号');
const cors=需要(“cors”);
const PORT=process.env.PORT | | 3001;
//在这里定义中间件
use(express.urlencoded({extended:true}));
使用(express.json());
//提供静态资产(通常在heroku上)
if(process.env.NODE_env===‘生产’){
应用程序使用(express.static('client/build'));
}
应用程序使用(
会话({secret:'keyboard cat',resave:true,saveUninitialized:true})
);
app.use(passport.initialize());
app.use(passport.sessions());
应用程序使用(
科尔斯({
来源:'http://localhost:3000“,//允许服务器接受来自不同来源的请求
方法:“GET、HEAD、PUT、PATCH、POST、DELETE”,
凭据:true,//允许来自浏览器的会话cookie通过
})
);
//使用apiRoutes
应用程序使用('/api',apiRoutes);
//将每个请求发送到React应用程序
//在此运行之前定义任何API路由
app.get('*',函数(req,res){
res.sendFile(path.join(uu dirname,'./client/build/index.html');
});
//启动API服务器
db.sequelize.sync().then(函数(){
应用程序侦听(端口、函数(){
console.log(`