【发布时间】:2026-01-08 18:25:01
【问题描述】:
使用 phonegap 版本 6.5.2 我正在尝试将 Android 应用程序的数据和媒体请求的域列入白名单。
在 config.xml 我有:
<access origin="*" />
以及一些特定的域:
<access origin="http://example.com" />
<access origin="http://fonts.googleapis.com" />
我也试过把它放在我的根 index.html 中,应该允许所有域,对吧?:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
但是当我的应用尝试加载内容时,我仍然只收到 404 错误。
什么给了?
【问题讨论】:
-
不太确定这是否是 csp 问题。如果是这样,我预计会出现 Refused to load ... 之类的错误,因为它违反了以下内容安全策略指令:...
-
还有什么可能导致 xhr 和媒体请求上的 404 错误?该应用程序在 iOS 和浏览器中运行良好,所要求的 URL 肯定在那里。我将如何进一步调试以找出阻碍它的原因?
-
好问题。您可以尝试在没有任何 CSP 的情况下运行您的应用,以确保它是 CSP 问题。
-
@nicholas cordova 白名单插件安装了吗?
-
我已经尝试取出 config.xml 和 index.html 中的所有 CSP 标签,并在控制台中获取以下行:“加载资源失败:服务器响应状态为 404(不是找到)”。
标签: android cordova content-security-policy phonegap