我知道这个问题曾被问过,但是我找不到一个仍然有效的解决方案。
我有一个小插件,它由一个内嵌一个iframe的iframe组成。这种结构很有意义,因为第一个iframe仅包含一些文本+按钮,点击即可打开第二个iframe与实际网站(耦合的网页)
除了野生动物园外,它在所有浏览器上都可以正常工作。在野生动物园中,实际的网站似乎无法保持会话,并且在每次请求/页面加载时,它将您视为一个全新的访客。
让它变得怪异的是,野生动物园有时工作得很好。例如,我在3个网站上安装了此插件,其中1个实际上正在工作。
我知道Safari在iframe中进行会话时的行为很奇怪,所以我真的很想看看这个问题是否已经解决,或者对于开发类似于我的插件的人来说仍然是一个大问题
答案 0 :(得分:0)
我有同样的问题。需要将iframe作为父页面加载并保存Cookie。然后,iframe将按预期运行。 Safari将iframe中来自不同域的所有cookie丢弃。
您可以对此进行测试...清除您的历史记录,然后尝试具有iframe(父级和iframe的域不同)的网页...然后直接将iframe加载为父级页面并使用它...然后转到回到原始网站,iframe将按预期运行。
我发现其他应用程序可以通过JavaScript生成iframe,并且iframe可以通过cookie以某种方式保存数据。