angular - 为什么不在本地主机上时没有设置 cookie?
问题描述
我正在构建一个 Angular 应用程序,我正在使用ngx-cookie-service
它来操作 cookie。
当我在本地机器上运行时,cookie 设置得很好。当我在我的测试服务器上运行并通过 localhost 访问它时,它也可以正常工作。例如:http://localhost:<port_number>
http://<server_ip>:<port_number>
但是,如果我尝试使用 ip 地址(
我搜索了其他答案,但找不到线索。我也摆弄了设置Same-Site = 'Lax' or 'None'
,Domain
但并没有改变。
这是我正在做的一个示例
constructor(private cookieService: CookieService) { }
this.cookieService.set("cookieName", "value", null, "/", null, true);
我究竟做错了什么?
编辑:
我发现如果我用secure=false
and设置cookie sameSite="Lax"
,它确实设置了:
如果我设置secure=true
and SameSite="Lax"
,它不会设置:
我需要安全作为安全要求是真实的,所以我不能这样。
这个 cookie 不是从后端发送的,前端正在创建它来存储一些信息。
有谁知道为什么它没有安全设置?
解决方案
我设法找到了 cookie 出现的方法。
在服务器上安装证书,当使用https
协议调用网站时,会出现cookie。
我找不到任何地方说带有 Secure set 的 cookie 不是简单创建的,http
但是当您考虑它时,它确实是有道理的。
推荐阅读
- c# - 打印机无法从 DeviceHub 接收作业
- sql - SSRS 条形图条件格式
- android - ARCore - 在增强的图像表面上播放 YouTube 视频
- javascript - 尝试导入错误:“useDispatch”未从“react-redux”导出
- plsql - 如何找到具有给定 x 和 y 坐标的多边形
- python - 访问数据框中的列以通过 for 循环验证 dtype 时出现 AttributeError
- php - 从控制器访问 Liip Imagine 捆绑包 - 将服务分配给变量(Symfony 4)
- c# - 将孩子转换为越界
- javascript - 使用 AngularJS 的 FILTER 函数计算过滤器中重复元素的总和
- python - 函数结果太小。如何解决这个问题?