Ios 如何在swift中删除WKWebview的所有数据存储

Ios 如何在swift中删除WKWebview的所有数据存储,ios,swift,cookies,wkwebview,Ios,Swift,Cookies,Wkwebview,我已经考虑过几种方法来实现这一点,但无法实现 我想在两个地方清除存储的cookie和其他数据。我有一个注销按钮,我想清除那里的登录信息。然后当用户打开webkit网页时,信息也不会存储在那里。我看了这里,但这一个不断给我错误的地方,它的格式不正确,所以ide一直说添加一个逗号或添加一个;发射型计算机断层扫描仪。。。所以这不起作用 我想做的是在查看加载的webkit是删除cookies和东西,然后加载网页。但我怎么能在斯威夫特? 这是我正在使用的代码 class RegisterViewContr

我已经考虑过几种方法来实现这一点,但无法实现

我想在两个地方清除存储的cookie和其他数据。我有一个注销按钮,我想清除那里的登录信息。然后当用户打开webkit网页时,信息也不会存储在那里。我看了这里,但这一个不断给我错误的地方,它的格式不正确,所以ide一直说添加一个逗号或添加一个;发射型计算机断层扫描仪。。。所以这不起作用 我想做的是在查看加载的webkit是删除cookies和东西,然后加载网页。但我怎么能在斯威夫特? 这是我正在使用的代码

class RegisterViewController: UIViewController, WKNavigationDelegate , WKUIDelegate{

let url = “url”

@IBOutlet weak var containerView: UIView!
var webView: WKWebView?

@IBOutlet weak var progressView: UIProgressView!

@IBOutlet weak var backButton: UIBarButtonItem!
@IBAction func barBackButtonAction(sender: AnyObject) {
    if self.webView!.canGoBack {
        self.webView!.goBack()
    }
}
@IBOutlet weak var forwardButton: UIBarButtonItem!
@IBAction func barForwardButtonAction(sender: AnyObject) {
    if self.webView!.canGoForward{
        self.webView!.goForward()
    }
}

override func viewDidAppear(animated: Bool){
    super.viewDidAppear(animated)
    if(webView != nil)
    {
        let w = self.containerView.frame.width
        let h = self.containerView.frame.height
        webView!.frame = CGRect(x: 0, y: 0, width: w, height: h)
        self.containerView.addSubview(self.webView!
    }

}

override func viewDidLoad() {
    super.viewDidLoad()
    cookieMonster()

   self.webView = WKWebView()
    self.webView?.navigationDelegate = self
    self.webView?.UIDelegate = self
    self.webView!.addObserver(self, forKeyPath: "estimatedProgress", options: .New, context: nil)

   let req = NSURLRequest(URL: url!)

    self.webView!.loadRequest(req)
    self.webView!.allowsBackForwardNavigationGestures = true


}

func webView(webView: WKWebView, didFinishNavigation navigation: WKNavigation!) {
    print("WebView content loaded.")
    cookieMonster()
    progressView.setProgress(0.0, animated: false)
    checkToSeeIfICanGoBack()
}
func webView(webView: WKWebView,didStartProvisionalNavigation navigation: WKNavigation)
{
   cookieMonster()

}

func cookieMonster()
{
    let storage = NSHTTPCookieStorage.sharedHTTPCookieStorage()
    for cookie in storage.cookies! {
        storage.deleteCookie(cookie)
        print("Eating cookies")
    }
    NSUserDefaults.standardUserDefaults().synchronize()
}


override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>){
    if (keyPath == "estimatedProgress") {
        progressView.hidden = webView!.estimatedProgress == 1
        progressView.setProgress(Float(webView!.estimatedProgress), animated: true)
    }
}
类RegisterViewController:UIViewController、WKNavigationDelegate、WKUIDelegate{
让url=“url”
@IBOutlet弱var containerView:UIView!
var webView:WKWebView?
@IBVAR progressView:UIProgressView!
@IBVar backButton:UIBarButtonItem!
@iAction函数barBackButtonAction(发送方:AnyObject){
如果self.webView!.canGoBack{
self.webView!.goBack()
}
}
@iButtonim按钮:uiBarButtonim!
@iAction func barForwardButtonAction(发件人:AnyObject){
如果self.webView!.canGoForward{
self.webView!.goForward()
}
}
覆盖功能视图显示(动画:Bool){
super.viewdide显示(动画)
如果(网络视图!=nil)
{
设w=self.containerView.frame.width
设h=self.containerView.frame.height
webView!.frame=CGRect(x:0,y:0,宽度:w,高度:h)
self.containerView.addSubview(self.webView!
}
}
重写func viewDidLoad(){
super.viewDidLoad()
库克怪兽()
self.webView=WKWebView()
self.webView?.navigationDelegate=self
self.webView?.UIDelegate=self
self.webView!.addObserver(self,forKeyPath:“estimatedProgress”,选项:。新建,上下文:nil)
let req=NSURLRequest(URL:URL!)
self.webView!.loadRequest(请求)
self.webView!.AllowsBackforwardNavigationPigests=true
}
func webView(webView:WKWebView,didfishnavigation:WKNavigation!){
打印(“已加载WebView内容”)
库克怪兽()
progressView.setProgress(0.0,动画:false)
checkToSeeIfICanGoBack()
}
func网络视图(网络视图:WKWebView,didStartProvisionalNavigation:WKNavigation)
{
库克怪兽()
}
func cookieMonster()
{
let storage=nshttpcookeStorage.sharedhttpcookeStorage()
用于存储中的cookie.cookies{
storage.deleteCookie(cookie)
打印(“吃饼干”)
}
NSUserDefaults.standardUserDefaults().synchronize()
}
重写func observeValueForKeyPath(键路径:String?,对象对象的类型:AnyObject?,更改:[String:AnyObject]?,上下文:UnsafeMutablePointer){
如果(关键路径==“estimatedProgress”){
progressView.hidden=webView!.estimatedProgress==1
progressView.setProgress(Float(webView!.estimatedProgress),动画:true)
}
}
}