我正在开发一个网络应用程序,客户端使用Angular,服务器端使用Spring Java强>。我读过一些文章,但没有找到我的问题的具体答案。目标是双方存储、读取和修改 cookie。我想找出方便且简单的方法来存储和读取 cookie。
首先,是否有一些最佳实践/约定可以在客户端进行设置,然后如果需要,可以在两侧进行读取和修改,或者......?
我发现在客户端使用 ngx-cookie-service 非常简单。对于服务器端来说,情况更糟。我尝试以这种方式添加 cookie 作为响应:
@RequestMapping("/")
public String hello(HttpServletResponse response) {
response.addCookie(new Cookie("foo", "bar"));
//..
}
但它不存储 cookie。
还使用 Spring 我尝试通过客户端读取已存储的 cookie,但它也不起作用:
@RequestMapping("/")
public String hello(@CookieValue("myCookie") String cookie){
log.info("My cookie {}", cookie);
(...)
}
请您参考如下方法:
检查这个:Access-Control-Allow-Credentials
基本上,如果您的服务器在 header 中具有此设置,那么您对服务器的请求也必须将 withCredentials 属性设置为 true
