iOS开发知识汇集

Cordova iOS端跨域问题

2023-03-19  本文已影响0人  时光事故

说明:记录工作中遇到的一些问题,方便查看,同时也希望能给大家一点帮助。

自从苹果官方要求上传到苹果应用商店里面的app必须是wkwebview,不在支持uiwebview后,corddova官方就从cordova-ios6.0起,移除了以前的uiwebview,全面更换成了wkwebview。wkwebview相对于uiview来说运行速度更快,占用内存更少,也更安全。但是也带来了问题。

问题1:Cordova iOS 在HTML内嵌入外部超链接如链接外部的一张图片,或者加载本地文件所出现的跨域问题?

解决方法:因为在wkwebview中不能使用http协议的网址,必须为https协议的网址,所以直接将链接改为https的。然后在info.plist文件中设置NSAppTransportSecurity属性,具体设置如下图:

问题2:Cordova iOS工程中ajax 请求出现的跨越的跨域问题?

解决方法:在CDVWebViewEngine.m文件中createConfigurationFromSettings方法下增加如下代码

[configuration.preferences setValue:@YES forKey:@"allowFileAccessFromFileURLs"];

[configuration setValue:@YES forKey:@"_allowUniversalAccessFromFileURLs"];

具体操作如下图:

以上就是解决Cordova ios 的跨域问题,如果你不清楚是哪里出现问题,直接暴力解决把所说的方法全部设置一下,基本上能解决问题,希望对大家有所帮助,谢谢!

————————————————

版权声明:本文为CSDN博主「天涯孤舟客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qq_34469600/article/details/121977890

上一篇 下一篇

猜你喜欢

热点阅读