Alamofire会自动存储cookie吗?
我是Alamofire的新手,所以如果这是一个noob问题,我很抱歉: 这个框架会自动存储cookie吗?
这是因为我有这样一个简单的请求:
Alamofire.request(.POST, loginURL, parameters: ["fb_id": fbId, "fb_access_token": fbToken]) .responseJSON { response in //print(response.request) // original URL request //print(response.response) // URL response //print(response.data) // server data //print(response.result) // result of response serialization if let JSON = response.result.value { print("loginURL - JSON: \(JSON)") } }
这个请求响应与cookie会话,我需要做出其他安全原因的请求; 奇怪的是,像魔术一样,我已经可以在第一次POST之后执行其他请求,而无需手动读取cookie并存储它。 我确定其他请求需要cookie会话,因为他们在postman上失败,例如但不在这里。
这只是一个function? 因为我在官方的GitHub页面上也找不到任何东西。
是! Alamofire基本上是NSURLSession
的包装器。 它的管理器通过调用defaultSessionConfiguration()
使用默认的NSURLSessionConfiguration
。
正如其高级使用部分中的github页面所示:
Alamofire基于NSURLSession和Foundation URL加载系统构建。 要充分利用此框架,建议您熟悉底层网络堆栈的概念和function。
在经理部分下:
像Alamofire.request这样的顶级便捷方法使用Alamofire.Manager的共享实例,该实例配置了默认的NSURLSessionConfiguration 。
defaultSessionConfiguration()
的NSURLSessionConfiguration引用说:
默认会话配置使用基于磁盘的持久缓存(除非将结果下载到文件中),并将凭据存储在用户的密钥链中。 它还将cookie (默认情况下)存储在与NSURLConnection和NSURLDownload类相同的共享cookie存储中。