无法在 Alamofire 中禁用缓存(Xcode 9 - swift 4)

Posted

技术标签:

【中文标题】无法在 Alamofire 中禁用缓存(Xcode 9 - swift 4)【英文标题】:can't disable cache in Alamofire (Xcode 9 - swift 4) 【发布时间】:2017-09-27 00:33:54 【问题描述】:

我在调用 almofire 时使用cannon 回答here 禁用缓存,但每次请求我仍然得到旧数据,并且tableView 没有更新! 这是我的代码:

let myurl = URL(string: "HERE_MY_URL")!
var myURLRequest = URLRequest(url: myurl)
myURLRequest.cachePolicy = .reloadIgnoringLocalCacheData

Alamofire.request(myURLRequest).response  response in


问题出在哪里?

【问题讨论】:

对于初学者,您发布的答案使用NSMutableURLRequest 而不是URLRequest 的链接 @Malik,如果我使用 NSMutableURLRequest,我会收到请求错误:参数类型“NSMutableURLRequest”不符合预期类型“URLRequestConvertible” 【参考方案1】:

我在 viewWillAppear func 中添加了这段代码,也许它不是完美的答案,但它有效

URLCache.shared.removeAllCachedResponses()

【讨论】:

以上是关于无法在 Alamofire 中禁用缓存(Xcode 9 - swift 4)的主要内容,如果未能解决你的问题,请参考以下文章

Swift 4 - Alamofire - 如何根据请求禁用缓存

似乎无法使用 Alamofire 获取缓存的响应

无法在 Alamofire response.result.value 中使用 NSURL!斯威夫特,xcode 7.3

如何手动将 Alamofire 添加到 xcode 项目中

如何在 Xcode 8.0 中安装 Alamofire 4.0

编译 xcode 项目时 Alamofire 的大量问题