如何在Swift中手动为UIWebView设置Cookie [英] How To Set a Cookie for a UIWebView manually in Swift

查看:81
本文介绍了如何在Swift中手动为UIWebView设置Cookie的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要迅速为Webview设置cookie.我找到了解决方案,但这是针对Objective-C的.如何在Swift中做到这一点?

I need to set a cookie for a webview in swift. I found a solution, but it is for objective-c. How to do it in Swift?

是否可能可以使用用于UIWebView的sharedHTTPCookieStorage手动设置cookie?

这里是解决方案.

推荐答案

您可以使用 NSHTTPCookie NSHTTPCookieStorage swift :

let URL = "example.com"
let ExpTime = NSTimeInterval(60 * 60 * 24 * 365)

func setCookie(key: String, value: AnyObject) {
    var cookieProps = [
        NSHTTPCookieDomain: URL,
        NSHTTPCookiePath: "/",
        NSHTTPCookieName: key,
        NSHTTPCookieValue: value,
        NSHTTPCookieSecure: "TRUE",
        NSHTTPCookieExpires: NSDate(timeIntervalSinceNow: ExpTime)
    ]

    var cookie = NSHTTPCookie(properties: cookieProps)

    NSHTTPCookieStorage.sharedHTTPCookieStorage().setCookie(cookie!)
}

迅速3:

func setCookie(key: String, value: AnyObject) {
    let cookieProps: [HTTPCookiePropertyKey : Any] = [
        HTTPCookiePropertyKey.domain: URL,
        HTTPCookiePropertyKey.path: "/",
        HTTPCookiePropertyKey.name: key,
        HTTPCookiePropertyKey.value: value,
        HTTPCookiePropertyKey.secure: "TRUE",
        HTTPCookiePropertyKey.expires: NSDate(timeIntervalSinceNow: ExpTime)
    ]

    if let cookie = NSHTTPCookie(properties: cookieProps) {
        NSHTTPCookieStorage.sharedHTTPCookieStorage().setCookie(cookie)
    }
}

设置 cookieAcceptPolicy 如下:

NSHTTPCookieStorage.sharedHTTPCookieStorage().cookieAcceptPolicy = NSHTTPCookieAcceptPolicy.Always

快捷键3

HTTPCookieStorage.shared.cookieAcceptPolicy = HTTPCookie.AcceptPolicy.always

请注意,这是Objective-C和旧版Swift中的 NSHTTPCookieAcceptPolicyAlways .

希望这会有所帮助:)

这篇关于如何在Swift中手动为UIWebView设置Cookie的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆