У меня есть интерфейс, написанный угловым, который работает на локальном хосте: 3002. У меня есть backend, написанный с Spring-boot, который работает на localhost: 8080.JSESSIONID cookie не сохранен
Я добавил фильтр для обработки CORS (который я нашел на SO и адаптированную к моей потребности):
@Component
public class CORSFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "http://localhost:3002");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
chain.doFilter(request, response);
}
public void destroy() {}
}
Когда я аутентифицировать, я могу видеть, что сервер отправляет куки:
Этот файл cookie не отправлен со следующими запросами. Это приводит к 401 ответов:
Я смотрел на «ресурсы» панели хромированной консоли и выяснили, что ни печенья не были сохранены.
Любые идеи?