文档章节

UIWebView支持跨域,WKWebView不支持!

秦无炎
 秦无炎
发布于 2017/05/05 16:19
字数 434
阅读 59
收藏 0

这几天做Hybrid应用涉及到了几个ajax请求,iOS是可以请求成功的,把html页面用safari打开也是可以请求成功,但是Andriod死活不成功而是直接进入error方法,本来还以为是Andriod代码配置的问题,后来才知道是跨域导致的,而跨域问题是在ajax侧配置的。

那么问题来了,为什么iOS在没有进行跨域配置的情况下就直接请求成功了呢???

原因:因为我在加载html界面时用的是UIWebView,这才是问题的关键。

UIWebView是UIKit下内置的浏览器控件,是渲染引擎和JS引擎的组合。系统自带的Safari浏览器也是通过UIWebView实现。

最最关键的———UIWebViw是支持跨域的。。。。。知道真相的我也是红红火火恍恍惚惚了!

给我惊喜的不止这个,还有WKWebView这个小婊砸!

在WWDC 2014发布会上发布iOS 8中,apple公布了WebKit框架,这意味着OSX和IOS开发者将共用同样的开发库,新改变可以提高开发者编写的代码的重复使用性。WebKit框架使用WKWebView来代替IOS的UIWebView和OSX的WebView,并且使用Nitro JavaScript引擎,这意味着所有第三方浏览器运行JavaScript将会跟safari一样快。

但是WebKit对跨域进行了安全检查限制,不允许跨域,所以要对不能跨域的链接单独处理。

如果你还想了解更多关于UIWebView和WKWebView的话,可以看下这篇文章,写的挺不错:从UIWebView到WKWebView

 

原文:http://www.jianshu.com/p/00770d661916

本文转载自:

共有 人打赏支持
秦无炎
粉丝 4
博文 123
码字总数 5319
作品 0
朝阳
程序员
私信 提问
网易严选的wkwebview测试之路

本文来自网易云社区 作者:孙娇 UIWebView是苹果继承于UIView封装的一个加载web内容的类,它可以加载任何远端的web数据展示在你的页面上,你可以像浏览器一样前进后退刷新等操作。不过苹果在i...

网易云
09/20
0
0
WK 与 JS 的那些事 WKWebView使用

苹果在iOS 8中推出了 ,这是一个高性能的 web 框架,相较于 来说,有巨大提升。本文将针对 WKWebView 进行简单介绍,然后介绍下如何和 JS 进行愉快的交互。还望各位大佬不吝赐教。 本文分为两...

秦无炎
2017/10/26
0
0
怎么让UIwebView/WKWebView支持WebSocket

有一个聊天需求,用H5写的,iOS端只需要加载H5页面就可以了,但是UIWebView不支持wesocket,百度到的方法都是导入SRWebSocket对象,然后进行初始化,在他的回调里边去实现聊天,但是这样的话...

你妹的擦
2016/07/05
1K
1
WKWebView针对于Cordova的IOS平台性能提升

聊聊家常 Ionic框架已经日益成熟,它使得我们很轻松就能实现与原生相似的体验,然而APP的速度是一个必要的条件,我们发现大多数NB的APP都有着一个共同的特点,那就是流畅。其实裸露的cordova...

赵_俊明
2016/08/19
508
0
iOS开发之WKWebView的使用以及遇到的问题

一、WKWebView简介 UIWebView自iOS2就有,WKWebView从iOS8才有,毫无疑问WKWebView将逐步取代笨重的UIWebView。通过简单的测试即可发现UIWebView占用过多内存,且内存峰值更是夸张。WKWebVi...

ziyuzhiye
2017/12/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Apache Sentry架构介绍

cdh版本的hadoop在对数据安全上的处理通常采用Kerberos+Sentry的结构。 kerberos主要负责平台用户的权限管理,sentry则负责数据的权限管理。 下面我们来依次了解一下: Kerberos包含一个中心...

hblt-j
20分钟前
0
0
First Bad Version(leetcode278)

You are a product manager and currently leading a team to develop a new product. Unfortunately, the latest version of your product fails the quality check. Since each version is......

woshixin
26分钟前
1
0
executor 和task 优先于线程(68)

java.util.concurrent 包里有一个Executor 框架 基于接口的任务执行工具 只需要一行代码 提交一个runnable 方法 优雅的终止(必须做到,不然虚拟机可能不会退出) 对于负载不重的服务 Execut...

Java搬砖工程师
26分钟前
1
0
一条SQL查询语句是如何执行的

123

writeademo
29分钟前
3
0
CSS中position属性( absolute | relative | static | fixed )详解

四个属性的特点 static:无特殊定位,对象遵循正常文档流。top,right,bottom,left等属性不会被应用。 relative:对象遵循正常文档流,但将依据top,right,bottom,left等属性在正常文档流...

简心
34分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部