Intentando obtener y luego enviar una cookie usando reaccionar y buscar

He intentado implementar algunos componentes de autenticación en mi aplicación durante unas horas y todavía no entiendo algunas de las cosas que están sucediendo.

Básicamente, me gustaría enviar unPOST request que contiene algunoscredentials para miAPI, que me envía uncookie volver con un token si las credenciales funcionaron. Luego, la cookie debería incluirse en los encabezados de todas las solicitudes futuras a mi API (lo que creía que era automático).

server.js (mi API es una maqueta por ahora, con archivos 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);
  }
...

Ahora elconsole.log(data) siempre muestra mi token (o nulo si mis credenciales son incorrectas), pero lo de las cookies no funciona ...

Mira, recibo elSet-Cookie encabezado, pero todavía no tengo ninguna cookie en mi página.

E incluso si logré obtener la cookie, cuando trato de crear una cookie usandodocument.cookie = "access_token=123"; y luego vuelvo a enviar la solicitud, mi cookie no entra en mi encabezado como lo haría con un jQuery Ajaxcall:

Yo leoaquí que agregarcredentials: 'include' salvaría el día, pero desafortunadamente no lo hizo.

¿Que me estoy perdiendo aqui?

¡Gracias por adelantado!

Respuestas a la pregunta(1)

Su respuesta a la pregunta