Safari Localstorage相同页面,但用作iframe时有所不同

问题描述 投票:0回答:1

我不熟悉这个野生动物园的行为。因此,我正在开发一个具有两个页面的React应用程序,其中一个页面应该从iframe打开,而另一个页面应该由自己打开。

设为https://sub.main.com/myApp/iframehttps://sub.main.com/myApp/landing

首先,我将打开包含https://main.com/作为iframe的https://sub.main.com/myApp/iframe。那么https://sub.main.com/myApp/iframe将为https://sub.main.com设置本地存储,比方说{City: "A"}

然后,我在https://sub.main.com/myApp/landing上更新了本地存储,我注意到本地存储中没有用于[[https://sub.main.com的条目,然后在这里创建一个新条目,例如{City: "B"}

当我尝试重新打开包含iframe

https://main.com/

https://sub.main.com/myApp/iframe时,我注意到https://sub.main.com的“城市”存储值仍为“ A “,然后直接在新标签中打开https://sub.main.com/myApp/iframe,并且'city'值为” B“,与https://sub.main.com/myApp/landing一个同步。任何人都可以解释这种行为,与地址https://sub.main.com相同的本地存储在用作iframe时有何不同?顺便说一句,我检查了chrome和firefox上是否不存在此行为,因为发生了预期的行为,即当我更改

https://sub.main.com/myApp/landing

中的存储值时,相应的值也更新为iframe了。还请注意,我不打算修改跨子域存储,因为我在所有情况下都更新了

https://sub.main.com

而不是https://main.com的本地存储。谢谢你,我做了几个小时的搜索,没有结果,所以我不得不问。
javascript html iframe safari local-storage
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.