Phonegap Cordova Ajax 请求 404(未找到)错误
Phonegap Cordova Ajax requests 404 (Not Found) Error
我的cordova版本是5.0.0
我在设备上部署应用程序时收到所有 ajax 请求的 404 错误。在 Web 浏览器上,它运行良好,但部署在设备上时,相同的应用程序无法运行。
我尝试添加以下内容来解决问题,但没有帮助。
Config.xml
<access origin="*" />
AndriodManiest.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
我还在 index.html 文件中添加了以下内容,但也没有任何区别。
<script>
$.support.cors=true;
</script>
这里有人有解决这个问题的另一个技巧吗?这似乎是 phonegap 的一个很常见的问题,但上面的修复在 phonegap/cordova 的旧版本中有效,但在我的情况下没有一个有效。
任何帮助都会很棒。
我有同样的问题,必须安装 cordova-plugin-whitelist
cordova plugin add cordova-plugin-whitelist
感谢这篇 Whosebug 文章 - Ajax Command to request URL no longer working
实际上应该添加 cordova 白名单插件:
cordova plugin add cordova-plugin-whitelist
或在您的 config.xml 文件中:
<plugin name="cordova-plugin-whitelist" spec="1" />
但如果您使用的是在线 phonegap 构建服务,则语法会有所不同。您必须在 config.xml 文件中添加以下行:
<gap:plugin name="cordova-plugin-whitelist" source="npm" />
并授权跨域请求:
<access origin="*" />
<allow-intent href="*" />
<allow-navigation href="*" />
不推荐这样做,因为到处都使用通配符,而且一切都是允许的。但它非常适合您的测试。
这对我有用。唯一的区别是我的 config.xml 我必须将它放在一个节点中才能生效。
我的例子如下:
<platform name="android">
<allow-intent href="market:*" />
<access origin="*" />
<allow-intent href="*" />
<allow-navigation href="*" />
</platform>
Phonegap 用户。将此行添加到 config.xml 是我的解决方案:
<gap:plugin name="cordova-plugin-whitelist" source="npm" />
我的问题有点不同。我使用 CI 管道编译了该应用程序。所以,你还需要做以上所有的事情(安装白名单和添加上网权限)
并且您还需要找到能够正确构建应用程序的 Visual Studio 版本。我的在构建时没有给出错误,但生成的应用程序无法发出任何 ajax 请求
我降级到VS2017后就可以了
我的cordova版本是5.0.0
我在设备上部署应用程序时收到所有 ajax 请求的 404 错误。在 Web 浏览器上,它运行良好,但部署在设备上时,相同的应用程序无法运行。
我尝试添加以下内容来解决问题,但没有帮助。
Config.xml
<access origin="*" />
AndriodManiest.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
我还在 index.html 文件中添加了以下内容,但也没有任何区别。
<script>
$.support.cors=true;
</script>
这里有人有解决这个问题的另一个技巧吗?这似乎是 phonegap 的一个很常见的问题,但上面的修复在 phonegap/cordova 的旧版本中有效,但在我的情况下没有一个有效。
任何帮助都会很棒。
我有同样的问题,必须安装 cordova-plugin-whitelist
cordova plugin add cordova-plugin-whitelist
感谢这篇 Whosebug 文章 - Ajax Command to request URL no longer working
实际上应该添加 cordova 白名单插件:
cordova plugin add cordova-plugin-whitelist
或在您的 config.xml 文件中:
<plugin name="cordova-plugin-whitelist" spec="1" />
但如果您使用的是在线 phonegap 构建服务,则语法会有所不同。您必须在 config.xml 文件中添加以下行:
<gap:plugin name="cordova-plugin-whitelist" source="npm" />
并授权跨域请求:
<access origin="*" />
<allow-intent href="*" />
<allow-navigation href="*" />
不推荐这样做,因为到处都使用通配符,而且一切都是允许的。但它非常适合您的测试。
这对我有用。唯一的区别是我的 config.xml 我必须将它放在一个节点中才能生效。
我的例子如下:
<platform name="android">
<allow-intent href="market:*" />
<access origin="*" />
<allow-intent href="*" />
<allow-navigation href="*" />
</platform>
Phonegap 用户。将此行添加到 config.xml 是我的解决方案:
<gap:plugin name="cordova-plugin-whitelist" source="npm" />
我的问题有点不同。我使用 CI 管道编译了该应用程序。所以,你还需要做以上所有的事情(安装白名单和添加上网权限)
并且您还需要找到能够正确构建应用程序的 Visual Studio 版本。我的在构建时没有给出错误,但生成的应用程序无法发出任何 ajax 请求
我降级到VS2017后就可以了