我无法理解如何在后端设置REACT中的cookie(连接sid)。
我有护照本地策略
这是我的server.js
app.use(cookieParser());
app.use(session({
resave: true,
saveUninitialized: false,
secret: 'bla bla bla',
cookie: { httpOnly: false }
}));
app.use(passport.initialize());
app.use(passport.session());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
这是我的route.js
app.post('/login', (req, res, next) => {
passport.authenticate('local-login', (err, user, info) => {
if (err) { return res.send(err); }
if (!user) { return res.send(info); }
req.logIn(user,(err) => {
if (err) { return next(err); }
return res.send({status: true, user});
});
})(req, res, next);
});
app.post('/test', isLoggedIn, (req, res) => {
res.send('Logged User')
});
这是我的反应文件
componentWillMount() {
axios({
method: 'post',
url: 'http://localhost:8080/test',
}).then(({data}) => {
console.log(data);
因此,当我使用邮递员时,一切正常,我可以登录,我的LoggedIn功能正常工作,如果我使用我的浏览器和我的路线一样。
问题是当我使用React ..我可以登录,我收到的确切是我想要的但没有任何东西存储在我的cookie中,我不知道该怎么做..
我对React有点新意,所以如果有人有线索的话......
由于