Попытка получить, затем отправить куки, используя реагировать и получать

Я уже несколько часов пытаюсь внедрить какой-то компонент аутентификации в свое приложение, и до сих пор не понимаю, что происходит.

В основном, я хотел бы отправитьPOST request содержащий некоторыеcredentials к моемуAPI, который посылает мнеcookie вернуться с токеном, если учетные данные работали. Затем файл cookie должен быть включен в заголовки всех будущих запросов к моему API (который я считал автоматическим).

server.js (мой API на данный момент является макетом с файлами JSON)

...
app.post('/api/login', jsonParser, (req, res) => {
  fs.readFile(ACCOUNTS_FILE, (err, data) => {
    if (err) {
      console.error(err);
      process.exit(1);
    }

    const accounts = JSON.parse(data);
    const credentials = {
      email: req.body.email,
      password: req.body.password,
    };
    var token = null;

    for (var i = 0; i < accounts.length; ++i) {
      const account = accounts[i];

      if (account.email === credentials.email
      && account.password === credentials.password) {
        token = account.token;
        break;
      }
    }

    if (token) {
      res.setHeader('Set-Cookie', `access_token=${token}; Secure; HttpOnly;`);
      res.json({ token });
    } else {
      res.json({ token: null });
    }
  });
});
...

app.js

...
handleConnection(e) {
    e.preventDefault();

    const email = this.state.email.trim();
    const password = this.state.password.trim();
    if (!email && !password) {
      return (false);
    }

    fetch(loginUrl, {
      method: 'POST',
      headers: {
        Accept: 'application/json',
        'Content-Type': 'application/json',
        credentials: 'include',
      },
      body: JSON.stringify(this.state),
    })
    .then((response) => response.json())
    .then((data) => {
      console.log(data);
    })
    .catch((error) => {
      console.warn(error);
    });

    return (true);
  }
...

Теперьconsole.log(data) всегда отображает мой токен (или ноль, если мои учетные данные неверны), но файл cookie не работает ...

Смотри, я получаюSet-Cookie заголовок, но у меня все еще нет cookie на моей странице.

И даже если мне удалось получить cookie, когда я пытаюсь создать cookie с помощьюdocument.cookie = "access_token=123"; и затем отправьте запрос снова, мой cookie не попадает в мой заголовок, как это было бы с jQuery Ajaxcall:

Я читаюВот что добавлениеcredentials: 'include' спас бы день, но, к сожалению, это не так.

Что мне здесь не хватает?

Заранее спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос