我无法理解如何从后端在 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}));
Run Code Online (Sandbox Code Playgroud)
这是我的 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')
});
Run Code Online (Sandbox Code Playgroud)
这是我的反应文件
componentWillMount() {
axios({
method: 'post',
url: 'http://localhost:8080/test',
}).then(({data}) => {
console.log(data);
Run Code Online (Sandbox Code Playgroud)
因此,当我使用邮递员时一切正常,我可以登录并且我的登录功能正在工作,如果我使用浏览器和我的路线也是如此。
问题是当我使用 React .. 我可以登录并收到我想要的东西但我的 cookie 中没有存储任何内容,我不知道该怎么做..
我对 React 有点陌生,所以如果有人有线索的话..
谢谢
| 归档时间: |
|
| 查看次数: |
428 次 |
| 最近记录: |