Alamofire缓存问题

时间:2017-07-07 17:18:24

标签: ios swift caching swift3 alamofire

我遇到了Alamofire的问题,我对其他请求的响应相同。我使用以下方法请求:

        self.ephemeralManager?.request("myurladdress.com", headers: headers)
            .authenticate(user: username, password: password)
            .responseJSON { response in
                print(response)
            }

这是SessionManager:

        let configuration = URLSessionConfiguration.ephemeral
        configuration.urlCache = nil
        ephemeralManager = Alamofire.SessionManager(configuration: configuration)

当我第一次按预期工作时发出请求。当我使用不同的用户名和密码后不久再次发出请求时,我从前一个请求中获取响应数据。如果我重新启动应用程序或等待一段时间,请求将按预期工作。

我认为这是一个缓存问题,但是在我发出请求或关闭缓存之前清除缓存的所有尝试都失败了。

我有什么遗失的东西吗?我已经使用过很多Alamofire并且从未遇到过这个问题。

Alamofire版本:4.1 Xcode版本:8.3.3 Swift版本:3.1 正在运行Alamofire的平台:iOS 运行Xcode的macOS版本:10.12.5

1 个答案:

答案 0 :(得分:0)

您可以在发出alamofire请求之前清除缓存。

NSURLCache.sharedURLCache().removeAllCachedResponses()

执行此命令后,再调用alamofire请求。