本文介绍了如何在alamofire中设置Cookies?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在 Alamofire 中设置Cookie,以便每当我杀死应用并重新启动时,都会发送相同的Cookie?
How to set Cookies in Alamofire such that such that every time I kill the app and restart it, the same cookie is sent?
推荐答案使用 NSHTTPCookie [cookiesWithResponseHeaderFields(_:forURL :)]方法从响应中获取Cookie。
Get cookies from response using the NSHTTPCookie [cookiesWithResponseHeaderFields(_:forURL:)] method.
// setCookies func setCookies(cookies: NSHTTPCookie){ Alamofire.Manager.sharedInstance.session.configuration.HTTPCookieStorage?.setCookies(cookies, forURL: response.URL!, mainDocumentURL: nil) } // getCookies func getCookies() { let parameters: [String: AnyObject] = [:] Alamofire.request(.POST, "test/test", parameters: parameters).responseJSON { response in if let header = response.response?.allHeaderFields as? [String: String], URL = response.request?.URL { let cookies = NSHTTPCookie.cookiesWithResponseHeaderFields(header, forURL: URL) print(cookies) } } }Swift 3:
func setCookies(cookies: HTTPCookie){ Alamofire.SessionManager.default.session.configuration.httpCookieStorage?.setCookies(cookies, forURL: URL, mainDocumentURL: nil) } Alamofire.request(url, method: HTTPMethod.post, parameters: parameters).responseData { (responseObject) -> Void in if let resposecode = responseObject.response?.statusCode { if resposecode != 200 { // error } else { // view all cookies print(HTTPCookieStorage.shared.cookies) } } }更多推荐
如何在alamofire中设置Cookies?
发布评论