公司項目中要求使用HTML來加載頁面并做登錄和Nginx驗證,首先使用的是uiwebview來加載頁面,但頁面中使用了大量的圖形數(shù)據(jù)的展示,加載過程相當(dāng)?shù)穆?消耗大量的內(nèi)存,所以選用WKWebView
登錄
換成wkwebview后WKWebView頁面的cookie不共享,WKWebView 在獨立于 app 進程之外的進程中執(zhí)行網(wǎng)絡(luò)請求昧捷,請求數(shù)據(jù)不經(jīng)過主進程漾抬,因此,在 WKWebView 上直接使用 NSURLProtocol 無法攔截請求杜漠。WKWebView Cookie 問題在于 WKWebView 發(fā)起的請求不會自動帶上存儲于 NSHTTPCookieStorage 容器中的 Cookie。
在網(wǎng)上找了很多方法也沒能解決這個問題比如這樣獲取cookie,但是并沒有獲取到,最后選用了比較笨的方法,
獲取cookie,但是失敗
先通過uiwebview登錄獲取cookie
獲取cookie存儲在本地??
在WKWebView中使用cookie
通過這種方法就可以多個WK頁面共享一個cookie,完成登錄,展示頁面
Nginx驗證
HTML 服務(wù)中使用了Nginx驗證的方式
期初使用這個方法并沒有解決問題
在與大神的請教中找到了這個方法
驗證不通過
搜索到這個方法,解決
使用不對的地方歡迎大佬們指點,在這里感謝一直給予我?guī)椭?海恩庭斯公爵",讓我寫下自己的第一篇博客,以后會多多學(xué)習(xí),多多更新,學(xué)以致用! 有些方法是在網(wǎng)上搜到的時間久找不到出處啦,表示感謝