资讯专栏INFORMATION COLUMN

解决苹果内核导致加载网页慢的问题

Tecode / 2351人阅读

摘要:原来开始苹果将列为过期。结论看到这里,就会发现是苹果内核安全机制导致的,每次都需要去验证的证书,如果不巧,你用的免费的证书,那么他的颁发机构在国外,在有段期间,国内访问都会很慢。

情景
一个H5的页面,里面嵌套在 IOS 中,有它的 wkwebview 进行渲染,这是背景。表现出的问题是,由 IOS 发起请求到最终用户看到页面需要等待特别长的时间,大概6秒到15秒之间。需要排查并解决这个显示慢的问题。
操作过程

1. IOS 端往浏览器中写入 Cookie。
1. 这里是列表文本这里是列表文本 浏览器根据 url 地址去请求 Oauth2.0 登录。
1. 浏览器根据返回的 code 跳转 登录。
1. 浏览器端登录后跳转到应用首页。
1. PS: 其中 浏览器端 指的是 IOS 中的 wkwebview

排查思路

1. 是否是 IOS 本身的 wkwebview 的问题?
1. 为什么之前使用 IOS 的 uiwebview 没有这个问题?
1. 是否是 Oauth2.0 业务的问题?
1. 是否是应用本身的问题?
1. 是否是网络问题?

分析问题

- wkwebview 访问其他网页不管是https 或者 http 的都能正常访问 证明不是它本身或者配置问题。
- 为什么 uiwebview 没有这个问题?
    经过试验,发现 uiwebview 本身在访问现有业务确实没有这个问题,当时也不清楚为什么它可以正常访问,就让 IOS 开发切换成这个不就好了。结果反馈说用这个不能上架。原来 iOS13 开始苹果将 UIWebview 列为过期 API。2020年4月起App Store将不再接受使用UIWebView的新App上架、2020年12月起将不再接受使用UIWebView的App更新。
  • Oauth2.0 业务在安卓端都能正常访问,故排除。
  • 是否是应用本身的问题? 同上。
  • 是否上网络问题?

     带着这个问题,去网上按照 ios 苹果 wkwebview 超时,发现大多说是 wkwebview 302 的坑以及存储分离 balaba的,按照给出的答案试了试 都没有解决问题。在快要放弃的时候,之前的一个IOS开发大拿说肯定是https的问题你查查。

结论

看到这里,就会发现是苹果内核安全机制导致的,每次都需要去验证 https的证书,如果不巧,你用的免费的证书,那么他的颁发机构在国外,在有段期间,国内访问都会很慢。

解决问题

找到的原因就解决了,要么更换证书使用国内的颁发的证书,要么在服务器做DNS或者其他优化,来加速访问。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/126076.html

相关文章

  • 深入理解 WKWebView(入门篇)—— WebKit 源码调试与分析

    摘要:虽然苹果官方提供了关于的与使用说明,但这并不能满足开发者们的需求,各类复杂场景依旧让我们焦头烂额,而解决方案却不易寻找。二源码下载编译及调试之前我们首先需要获取一份苹果官方的源码。 一、前言移动互联网时代,网页依旧是内容展示的重要媒介,这离不开 WebKit 浏览内核技术的支持与发展。在 iOS 平台下开发者们...

    funnyZhang 评论0 收藏0
  • 2018先知白帽大会 | 议题解读

    摘要:摘要今年的先知白帽大会,与会者将能够亲身感受到非常多有趣的技术议题,如在国际赛事中屡夺佳绩的团队,其队长将亲临现场,分享穿针引线般的漏洞利用艺术。从数据视角探索安全威胁阿里云安全工程师议题解读本议题讨论了数据为安全人员思维方式带来的变化。 摘要: 今年的先知白帽大会,与会者将能够亲身感受到非常多有趣的技术议题,如HITCON在国际赛事中屡夺佳绩的CTF团队,其队长Orange将亲临现场...

    Hydrogen 评论0 收藏0
  • 如何在https网页中引入http资源

    摘要:建议在调试阶段用或者引入,在部署阶段用相对协议,或者直接在本地建一个服务器,以服务器的形式打开页面,就不会出现浏览器无法加载相对协议下的资源的情况了。 前几天在做一个翻译小应用的时候,发现在安卓手机端可以正常运行,而在苹果手机和谷歌浏览器中不能正常运行(可能safari和Chrome的内核都是webkit内核的原因,还是webkit内核大法好^__^),电脑端有提示不安全提示,而手机端...

    ChristmasBoy 评论0 收藏0
  • 从浏览器内核开始01

    摘要:极速浏览器以及搜狗高速浏览器也使用作为内核在脚本理解方面,使用自己研发的引擎。目前国内浏览器使用情况认识浏览器内核的一个分支安全浏览器极速浏览器浏览器搜狗浏览器百度浏览器浏览器浏览器 什么是浏览器内核? 浏览器最核心的部分应该是浏览器内核Rendering Engine,也称之为渲染引擎,其主要作用时负责对网页语法进行解释,并渲染网页。所以渲染引擎决定了浏览器如何显示网页网页内容及网页...

    Cympros 评论0 收藏0
  • html基础

    摘要:不存在或格式不正确会导致文档以兼容模式呈现标准模式的排版和运作模式都是以该浏览器支持的最高标准运行。如果不能确定时,首选使用自然样式标签 HTML 语义化 HTML标签的语义化是指:通过使用包含语义的标签(如h1-h6)恰当地表示文档结构 css命名的语义化是指:为html标签添加有意义的class 为什么需要语义化: 去掉样式后页面呈现清晰的结构 盲人使用读屏器更好地阅读 搜...

    sihai 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<