Firefox не хранит файлы cookie, отправленные через несколько доменов, даже если разрешены все CORS

У меня проблема с Firefox, пока Chrome работает нормально. Вот такая ситуация:

  • Website1.com возвращает html-страницу в SSL.
  • Эта страница делает запрос к Website2.com по SSL либо через тег img, либо через XMLHttpRequest (та же проблема).
  • Website2.com возвращает файл cookie, который будет установлен для себя
  • Firefox игнорирует этот файл cookie. Он никогда не сохраняется, даже если отображается в консоли.
  • Консоль ни на что не жалуется.

Клиент отправляет:

Origin: https://website1.com

Сервер возвращает:

Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: *
Access-Control-Allow-Methods: *
Access-Control-Allow-Origin: https://website1.com
Access-Control-Expose-Headers: *
Set-Cookie: ...

Что еще мне не хватает в CORS?

Спасибо!

ты нашел ответ? У меня такая же проблема, все работает на хроме и т.е ... но firefox не отправляет cookie.

N1gthm4r3 10.07.2018 14:46

возможно, это связано с настройками вашего браузера, сбросьте firefox.

Payam Khaninejad 18.07.2018 07:36

Привет, разрешено ли принимать сторонние файлы cookie и данные в вашем Firefox?

Madhan Varadhodiyil 18.07.2018 22:17

Да, он принимает, и настройки установлены по умолчанию. Я пробовал это на разных компьютерах, используя стандартную редакцию и версию для разработчиков.

N1gthm4r3 19.07.2018 13:56
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
5
4
1 318
1

Ответы 1

Access-Control-Allow-Credentials: true

Это особый флаг. Если одна сторона заявляет об этом, другая также должна объявить об этом, иначе это сбой безопасности, и браузер не будет принимать данные.

Поэтому добавьте тот же заголовок в запрос клиента. (Или, если вы управляете сервером, рассмотрите возможность отказа от файлов cookie и передачи данных с помощью другого механизма)

Другие вопросы по теме