spring - 在 Angular 和 Java 中存储 cookie 的方法
问题描述
我正在开发一个 web 应用程序,使用Angular客户端和 Java 和服务器端的Spring。我已经阅读了一些文章,但还没有找到我的问题的具体答案。目标是从双方存储、读取和修改 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);
(...)
}
解决方案
检查这个:访问控制允许凭据
基本上,如果您的服务器在标头中有此设置,那么您对服务器的请求也必须将 withCredentials 属性设置为 true
推荐阅读
- python - TypeError: object.__new__() 只接受一个参数(要实例化的类型)
- arrays - 根据列值在一个pdf中打印多张纸
- gnuplot - 来自标题注释的 gnuplot 自动标题矩阵
- java - 有没有办法在这里使用 Java 流执行两个映射操作?
- django - 如何登录到已经创建的没有密码的用户?
- r - 如何在 R 中编写自定义单元测试?
- python - Click:如何使用 Click 自定义“错误:没有这样的命令 xx”错误处理?
- mysql - ENOENT:没有这样的文件或目录,stat '/Users/sampai/Desktop/Repos/task_tracker/task_tracker/build/index.html'
- histogram - 如何在一个具有共享轴的图上创建两个直方图?
- keras - Keras 2D 输出