我有一个包含子iframe的父网页:
- 父级页面位于
https://first-site.com
- 子级页面位于
<iframe src="https://second-site.com">
(在父级页面内) - cookie 由
second-site.com
服务器在页面加载时使用以下 HTTP 标头设置:Set-Cookie: iqsession=869194b8e575d0d333f9395557f564f5eca31c15761c; expires=Wed, 08-Feb-2023 03:51:14 GMT; Max-Age=600; path=/; secure; httponly; samesite=none
- 当我在
first-site.com
上加载页面(其中包含second-site.com
的 iframe),Firefox 无法存储second-site.com
的 cookie。它在 cookie 标签下不可用,也不会在后续页面加载中提供给second-site.com
。控制台中没有警告或错误。 - 这在 Chrome 中是可以工作的。
- 请注意,我不尝试跨域访问 cookie。cookie 只由
second-site.com
在服务器端设置,并且只由second-site.com
在服务器端读取。外部父级页面不需要知道任何关于 cookie 的信息。
_top
框架,检查 cookie,然后重新加载原始页面。我能够跳出 iframe 是因为我正在使用 Shopify App Bridge,它打开了嵌入式框架和包含站点之间的一种后通道控制接口。我在身份验证流程中使用 cookies。 - Derrick Miller