Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Почему не сохраняются cookie? (https://javascript.ru/forum/node-js-io-js/83588-pochemu-ne-sokhranyayutsya-cookie.html)

CryNet 17.01.2022 16:04

Почему не сохраняются cookie?
 
Пытаюсь установить cookie. Код:

Код:

res
  .cookie('token', token, {
    maxAge: 864000,
    httpOnly: false
  })
  .send('OK')

Ответ приходит на фронт. Но cookie не устанавливаются.
Я локально развернул проект. Фронт у меня стартует на localhost:8080, а бэк на localhost:5000. Может дело в этом?

В проекте используются библиотеки
const cors = require('cors')
const cookieParser = require('cookie-parser')


Req: https://hsto.org/webt/61/e4/48/61e44...d912631954.png

Res: https://hsto.org/webt/61/e4/48/61e44...b985088392.png

ksa 17.01.2022 16:29

Цитата:

Сообщение от CryNet
Но cookie не устанавливаются.

Сервер на клиент куки прислал?
Это можно посмотреть в присланном ответе браузеру...

CryNet 17.01.2022 16:58

Цитата:

Сообщение от ksa (Сообщение 543091)
Сервер на клиент куки прислал?
Это можно посмотреть в присланном ответе браузеру...

Я скрин приложил шапке. В ответе set-cookie есть

ksa 17.01.2022 17:04

Если сервер присылает куки браузеру - он может их использовать.
А при твоей установке
Цитата:

Сообщение от CryNet
httpOnly: false

Сможет еще и менять...

ksa 17.01.2022 17:11

CryNet, вот такая статейка прольет свет?
https://russianblogs.com/article/2720329551/

CryNet 17.01.2022 17:20

Цитата:

Сообщение от ksa (Сообщение 543094)
Если сервер присылает куки браузеру - он может их использовать.

Та то я уже искал в чём трабл и менял параметры все подряд

CryNet 17.01.2022 19:24

Цитата:

Сообщение от ksa (Сообщение 543095)
CryNet, вот такая статейка прольет свет?
https://russianblogs.com/article/2720329551/

Спасибо за помощь.

Настраиваем фронт:
На фронте у меня юзается axios. В конфиге axios-а я указал
Код:

axios.defaults.withCredentials = true
Ловим ошибку CORS, хотя у меня юзается библиотека cors:
Код:

app.use(cors);
Дальше настраиваем сервер:
Запись
Код:

app.use(cors);
меняем на
Код:

app.use(
  cors({
    credentials: true,
    ENV
  }),
);

ENV -- это URL нашего фронта, подробно про это тут:
https://stackoverflow.com/questions/...-true/53025297


Часовой пояс GMT +3, время: 15:46.