關於網頁上的操作留存的cookie和快取清理
背景是這樣的,一個網頁形式的登入頁,用WKWebView載入,輸入完賬戶密碼後,點選登入按鈕登入,而後我退出登入,並dismiss掉這個網頁登入頁回到這個登入頁之前的一個,當我點選這一頁的按鈕present這個登入頁的時候,我發現他並沒有出現登入頁,而是直接調取登入方法登陸上去了,經過大家幫助,查到原因是網頁記錄了cookie,然後查資料,找到清理cookie的方法
let url = NSURL(string: "XXXXXXX")!
let request = NSURLRequest(URL: url)
iflet cookies = NSHTTPCookieStorage.sharedHTTPCookieStorage
for cookie in cookies {
NSHTTPCookieStorage.sharedHTTPCookieStorage().deleteCookie(cookie)
}
}
我發現並沒有用,之後經人指點,加上了清楚URL快取的程式碼NSURLCache.sharedURLCache().removeAllCachedResponses()
這下就好了,流程可以正常運行了!這倆段程式碼是缺一不可的,我嘗試過只保留第二段程式碼,發現無效,說明網頁既儲存了cookie,又儲存了URL快取