0

我已经frame-ancestors: 'self'在网络服务器https://www.exapleA.com/test/上添加了 CSP 配置。

目前我有另一个 Android Cordova 应用程序并在 JS 文件中使用 iframe 标记来加载以上网站页面,如下所示:

<iframe src="https://www.exapleA.com/test/"></iframe>

但我得到了如下 CSP 错误:

拒绝在框架中显示“ https://www.exapleA.com/test ”,因为祖先违反了以下内容安全策略指令:“frame-ancestors 'self'

您知道 Android Cordova 应用程序将所有静态文件添加到包装器中,因此没有域可以附加到“frame-ancstors”中。那么如何解决这个问题呢?

4

1 回答 1

0

在您的 Cordova 配置 ( config.xml ) 中,您只需添加以下内容:

<preference name="Hostname" value="custom-domain.co" />
<allow-navigation href="http://custom-domain.co/*"/>

custom-domain.co就像您的 Android APK 的域。

然后,您将能够像这样配置您的网站:

frame-ancestors: 'self' custom-domain.co

有关更多信息,请参阅此链接(配置 -> 主机名部分):https ://github.com/ionic-team/cordova-plugin-ionic-webview

于 2021-02-09T18:52:41.970 回答