У меня есть сервер nodejs с экспресс, экспресс-сессией и паспортом для аутентификации. Мой маршрут входа выглядит так:
router.post('/login', passport.authenticate('local'), (req, res) => {
return res.status(200).json({
message: "Auth successful",
username: req.user.username
})
})
Когда я тестирую маршрут с почтальоном, я получаю печенье с идентификатором сеанса в ответе: Результат почтальона Но когда я делаю почтовый запрос с аксиосом в React, я не получаю никаких файлов cookie:
const login = (email, password) => {
const reqBody = {
email,
password
}
const config = {
withCredentials : true,
}
return axios.post(`${serverUrl}/user/login`, reqBody, config)
}
Вот мои cors на моем сервере Node.js:
// Cors definition
app.use((req, res, next) => {
res.setHeader('Access-Control-Allow-Origin', 'http://localhost:3000')
res.setHeader('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept')
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE')
res.setHeader('Access-Control-Allow-Credentials', true)
next()
})
Вкладка «Сеть» в Chrome Как видите, в консоли нет вкладки «cookie» и нет заметок в заголовках. Поэтому я хочу знать, почему и как я могу это исправить.