angularjs - 在 WKWebView 中托管的本地 AngularJS 应用程序

标签 angularjs swift cross-domain

我有一个使用 WKWebView 构建的混合应用程序。我已经解决了加载本地文件的问题,但是我无法从本地文件加载 AngularJS 应用程序。我收到以下错误:

Cross origin requests are only supported fro HTTP.

对于 Android,我能够更新 WebView 控件上的设置以允许从 file://方案中进行此操作。我在 iOS 中缺少类似的东西吗?或者其他解决方案?

我正在使用 XCode 6.3 (6D570)

最佳答案

这是 iOS 8 中 WKWebView 的一个已知问题,我怀疑这就是 UIWebView 仍未被弃用的原因。

我还没有时间使用测试版,但我唯一的建议是试试最新的 Xcode 7/iOS 9,并使用新的 WKWebView API

- (WKNavigation * _Nullable)loadFileURL:(NSURL * _Nonnull)URL allowingReadAccessToURL:(NSURL * _Nonnull)readAccessURL

理想情况下,您可以将其他 HTML 文件作为您提供的 readAccessURL 中的模板。

请提交您在最新测试版中发现的任何错误。 Apple 在 WKWebView 中处理问题的速度太慢了。

如果您只需要 Angular 应用现在工作,那么您需要切换到 UIWebView,它已被确认可以与存储在设备。

关于angularjs - 在 WKWebView 中托管的本地 AngularJS 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30942702/

相关文章:

jquery - 跨域 AJAX 请求不起作用

jquery - IE跨域jSONP到google apps脚本内容服务

javascript - 将事件发送到范围内的 Angular Directive(指令)函数

angularjs - 如何使用 Angular 指令处理单个 HTML 元素上的多个触摸事件

javascript - 如何使用 angularjs 或 javascript 添加上一个/下一个选项?

ios - 在 Swift 中从 AppDelegate 获取 ViewController 的实例

ios - 如果 HitTest 失败,则将平移手势传递给默认相机 Controller

ios - 对于大于 PI 的值,CAKeyFrameAnimation 不是线性的

javascript - Karma单元测试跨域资源AngularJS

angularjs - VS Code 中的 Chrome 调试器扩展不会显示 html 文件