Jac*_*ith 10 objective-c ios swift
我需要在swift中为webview设置一个cookie.我找到了一个解决方案,但它是针对objective-c的.怎么在Swift中做到这一点?
是否可以使用sharedHTTPCookieStorage为UIWebView手动设置cookie?
这是解决方案.
Ron*_*ara 22
您可以执行以下操作,使用NSHTTPCookie和NSHTTPCookieStorage设置cookie 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!)
}
Run Code Online (Sandbox Code Playgroud)
斯威夫特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)
}
}
Run Code Online (Sandbox Code Playgroud)
设置cookieAcceptPolicy如下:
NSHTTPCookieStorage.sharedHTTPCookieStorage().cookieAcceptPolicy = NSHTTPCookieAcceptPolicy.Always
Run Code Online (Sandbox Code Playgroud)
斯威夫特3
HTTPCookieStorage.shared.cookieAcceptPolicy = HTTPCookie.AcceptPolicy.always
Run Code Online (Sandbox Code Playgroud)
请注意,这是NSHTTPCookieAcceptPolicyAlways在Objective-C和旧版本的Swift中.
希望这可以帮助:)
| 归档时间: |
|
| 查看次数: |
18795 次 |
| 最近记录: |