解决IOS12复杂跨域兼容问题的方案与思路

本文讲述了在iOS12系统上,针对WKWebview出现的复杂跨域问题的分析与解决过程。通过测试确定问题与系统版本相关,主要讨论了CORS跨域安全标准,包括简单和复杂跨域请求。最终,通过调整服务端返回的Access-Control-Allow-Origin和Access-Control-Expose-Headers头信息成功解决了问题。
摘要由CSDN通过智能技术生成

一. 故事的起因

对于一个没有其它领域开发背景的APP开发人员来说,“跨域资源访问”可能真的不属于我们需要认真关心的问题。就原生开发来说,主流的接口开发模式大多数都转变成无状态的接口请求方式,一方面可以真正迎合APP在开发过程中的简单适用性。对于服务端来说,在后期的优化及扩展实现上更简单灵活。无需要像网页开发一样,用临时隐藏cookit字段的方式实现用户身份的辨认(Session)。APP在进行接口请求时,都可以在HTTP头或者body中附带个人身体识别码(token)等信息给到接口进行身份识别。所以,就这么简单粗暴。

但是,尽管这样,我们做这行,多知道点东西还是没坏处的,说不定哪天就用上了。

于是,这么一天就到了。也就是前段时间,我们的专车项目有一部分边缘业务是以混合开发的模式嵌入了WKWebview进行H5页面的展示。对于我们做APP的人来说,这是再简单不过的事情了。

开发好之后给到测试人员进行测试的时候,我们发现很多系统上都没测到H5在WKWebview运行的问题,唯独在IOS12系统的手机上,有些流程不能走通。在排除了各方面问题后,一班人感觉束手无策。

这时候,web前端怀疑是服务端接口的问题,服务端接口在怀疑是我们APP的问题。对于很多APP开发人员来说,WKWebview的使用也就那么回事了,想做错都比较难,于是就陷入僵局。

因为打车项目只是我们团队开发的众多项目中比较小的一个,我就安排了一两个人去做项目的更新迭代,到时下午开小组会议的时候我才得知问题的存在。在初步得知情况后,把问题指向了 “是否WKWebview在IOS12系统上存在宽容度的差异”

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值