-1

我有一个具有嵌入式 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)”。

有谁知道如何解决这个问题?

4

1 回答 1

0

You could perhaps try adding allow-navigation to the config.xml.
<allow-navigation href="myserver:port/*/*" /> https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-whitelist/

You might also try using the the logcat tool for Android. It might be possible to pinpoint the problem using it.

于 2016-06-28T09:30:48.197 回答