为什么不在本地主机上时不设置 cookie?

Why are the cookies not setting when not on localhost?

我正在构建一个 Angular 应用程序,我正在使用 ngx-cookie-service 来操作 cookie。

当我 运行 在我的本地计算机上时,cookie 设置得很好。 当我在我的测试服务器上 运行 并通过本地主机访问它时,它也工作正常。 例如:http://localhost:<port_number>

但是,如果我尝试使用 ip 地址 (http://<server_ip>:<port_number>) 从另一台机器访问测试服务器,应用程序可以运行,但 cookie 不存在,也没有消息、错误或警告,关于正在发生的事情。

我搜索了其他答案,但找不到任何线索。我还摆弄了 Same-Site = 'Lax' or 'None'Domain 的设置,但它并没有改变。

这是我正在做的一个例子

  constructor(private cookieService: CookieService) { }

    this.cookieService.set("cookieName", "value", null, "/", null, true);


我做错了什么?

编辑:

我发现如果我用 secure=falsesameSite="Lax" 设置 cookie,它会设置:

如果我设置 secure=trueSameSite="Lax",它不会设置:

作为安全要求,我需要 secure 为真,所以我不能就这样离开。

这个 cookie 不是从后端发送的,前端正在创建它来存储一些信息。

有谁知道为什么没有安全设置?

我设法找到了让 cookie 出现的方法。

在服务器上安装证书,当使用https协议调用网站时,出现cookie。

我找不到任何地方说带有安全设置的 cookie 不是在普通 http 上创建的,但仔细想想它确实有道理。