Javascript 在iOS中从iframe重定向父页面

Javascript 在iOS中从iframe重定向父页面,javascript,ios,redirect,iframe,mobile-safari,Javascript,Ios,Redirect,Iframe,Mobile Safari,我将iFrame嵌入到外部支付提供商,在用户完成步骤后,用户将被重定向到我的域。 我现在正尝试将父页面重定向到位于我域上的另一个页面,如下所示: iFrame嵌入mydomain.com <iframe src="example.com/payment" sandbox="allow-top-navigation allow-forms allow-scripts"></iframe> 在iOS中的Safari上,我现在看到:安全错误:DOM异常18:试图突破用户代理的

我将iFrame嵌入到外部支付提供商,在用户完成步骤后,用户将被重定向到我的域。 我现在正尝试将父页面重定向到位于我域上的另一个页面,如下所示:

iFrame嵌入mydomain.com

<iframe src="example.com/payment" sandbox="allow-top-navigation allow-forms allow-scripts"></iframe>
在iOS中的Safari上,我现在看到:安全错误:DOM异常18:试图突破用户代理的安全策略。

即使我在沙盒参数中使用了allow top navigation,这也是预期的行为吗? 如果是这样,是否存在任何现有的解决办法?

我自己找到了答案。 我的iframe沙盒属性缺少:允许相同来源参数

工作示例

window.top.location.href = "mydomain.com";
<iframe src="example.com/payment" sandbox="allow-same-origin allow-top-navigation allow-forms allow-scripts"></iframe>

解释

据我所知,问题在于重定向: example.com/payment to mydomain.com某些浏览器会阻止此操作。 遗憾的是,我没有找到明确的解释来解释为什么这个特定的重定向被阻止。 这似乎与: