Как передать файл cookie httpOnly с Angular и NodeJS на Google Cloud Platform - PullRequest
0 голосов
/ 23 мая 2019

Я пытаюсь разделить файл cookie httpOnly между двумя приложениями (Angular и Node.js), которые обслуживаются через механизм приложений Google.

У меня нет проблем при локальной работе:

  • localhost: 4200 в Angular
  • localhost: 4000 в NodeJS

Но когда приложение обслуживается из производственной среды GCP, cookie не сохраняется на клиенте.сторона.

Я предоставил необходимые параметры:

СТОРОНА КЛИЕНТА - ЗАПРОС УГЛОВАЯ:

      return this.http
        .post<any>(
          <my-nodejs-request-url>,
          {},
          {
            headers: { 'x-csrf-token': token },
            withCredentials: true
          }
        )
        .pipe(
          map(token => token as string),
          catchError((error: string) => throwError(error))
        );

СТОРОНА СЕРВЕРА - УЗЕЛ JS:

app.use(
  cors({
    origin: 'https://<my-angular-application-url>.appspot.com',
    credentials: true,
    allowedHeaders: 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Credentials, Cookie, Set-Cookie, x-csrf-token'
  })
);

создан cookie

  res.cookie('nameCookie', token, {
    httpOnly: true,
    sameSite: false,
    secure: false,
    expires: new Date(Date.now() + 900000)
  });

Я сталкиваюсь с этой проблемой только на GCP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...