iOS 防 DNS 污染方案调研 --- WebView 业务场景
概述 本文主要介绍,防 DNS 污染方案在 WebView 场景下所遇到的一些问题,及解决方案,也会涉及比如:“HTTPS+SNI” 等场景。 面临的问题 为什么 WebView 需要特别适配SNI?因为形如 http://1.1.1.1/a/b.com 在 WebView 中是无法正常访问的,也是需要修改HOST,所以需要使用 NSURLProtocol 来 hook 网络请求,而且 “HTTPS+SNI” 组合是非常常见的场景。WebView的IP直连方案,基本的思路是接管网络请求,随之就会面临到一些重定向、cookie等问题。下面对这些问题做下记录、总结。--> WKWebView 无法使用 NSURLProtocol 拦截请求 方案如下: 换用 UIWebView 使用私有API进行注册拦截 换用 UIWebView 方案不做赘述,说明下
