我有一个具有嵌入式 IFRAME 的 fiori 应用程序,它可以生成 XMLHttpRequest。IFRAME src 指向“ https://myserver:port/some/path/iframe.html ”,页面内的请求发送到同一服务器 - “ https://myserver:port/some/path/request_uri "(POST 请求)。这在桌面/移动浏览器和 iOS 的 Fiori 应用程序中运行良好,但对于“404 Not Found (from cache)”的 Android 应用程序失败。我不确定为什么它可以正常加载页面(https://myserver:port/some/path/iframe.html)但请求失败。
一些研究似乎表明这是由 Cordova 引起的,我需要添加 cordova 插件白名单 - GitHub - apache/cordova-plugin-whitelist:Apache Cordova 插件白名单的镜像。
看起来该请求应该与 config.xml 中的以下内容一起正常工作
<access origin="*" />
但它不起作用。我什至尝试在 iframe 页面和 LaunchPad 页面中添加配置非常松散的 CSP 元标记:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'">
但该请求似乎仍然被阻止并返回“404 Not Found (from cache)”。
有谁知道如何解决这个问题?