wkwebview中使用cookie和Nginx验证

公司项目中要求使用HTML来加载页面并做登录和Nginx验证,首先使用的是uiwebview来加载页面,但页面中使用了大量的图形数据的展示,加载过程相当的慢,消耗大量的内存,所以选用WKWebView

登录

换成wkwebview后WKWebView页面的cookie不共享,WKWebView 在独立于 app 进程之外的进程中执行网络请求,请求数据不经过主进程,因此,在 WKWebView 上直接使用 NSURLProtocol 无法拦截请求。WKWebView Cookie 问题在于 WKWebView 发起的请求不会自动带上存储于 NSHTTPCookieStorage 容器中的 Cookie

在网上找了很多方法也没能解决这个问题比如这样获取cookie,但是并没有获取到,最后选用了比较笨的方法,


获取cookie,但是失败

先通过uiwebview登录获取cookie

获取cookie存储在本地  

在WKWebView中使用cookie



通过这种方法就可以多个WK页面共享一个cookie,完成登录,展示页面

Nginx验证

HTML 服务中使用了Nginx验证的方式

期初使用这个方法并没有解决问题


在与大神的请教中找到了这个方法


验证不通过

搜索到这个方法,解决


使用不对的地方欢迎大佬们指点,在这里感谢一直给予我帮助的"海恩庭斯公爵",让我写下自己的第一篇博客,以后会多多学习,多多更新,学以致用! 有些方法是在网上搜到的时间久找不到出处啦,表示感谢

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容