Set-Cookie в заголовке HTTP игнорируется AngularJS

Я работаю над приложением, основанным на AngularJS на стороне клиента и Java для моего API (Tomcat + Jersey для WS) на стороне сервера.

Некоторые пути моего API ограничены, если у пользователя нет сеанса, возвращается статус ответа 401. На стороне клиента 401 статус http перехватывается, чтобы перенаправить пользователя на страницу входа.

После аутентификации пользователя я создаю сеанс на стороне сервера.

httpRequest.getSession(true);
и ответ, отправленный клиенту, имеет в своем заголовке инструкцию Set-cookie:

Set-Cookie:JSESSIONID=XXXXXXXXXXXXXXXXXXXXX; Domain=localhost; Path=/api/; HttpOnly

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

Клиент и сервер находятся в одном домене, но у них не одинаковый путь и номер порта:

Клиент:http://localhost:8000/app/index.html

Сервер:http://localhost:8080/api/restricted/

Дополнительная информация: CORS включен с обеих сторон:

"Access-Control-Allow-Methods", "GET, POST, OPTIONS"
"Access-Control-Allow-Origin", "*"
"Access-Control-Allow-Credentials", true

Любая идея сделать Set-cookie работает правильно? Это проблема AngularJS?

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

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