我将URLSession
与useProtocolCachePolicy
一起使用。我得到的是304,而不是200。
我到处搜索sessionConfig.requestCachePolicy = .useProtocolCachePolicy
时返回200而不是304,但对我而言却相反。谁能告诉我原因吗?
var request = URLRequest(url: url)
request.setValue("Etag", forHTTPHeaderField: "If-None-Match")
let sessionConfig = URLSessionConfiguration.default
sessionConfig.requestCachePolicy = .useProtocolCachePolicy
let session = URLSession(configuration: sessionConfig)
session.dataTask(with: request) { (data, response, error) in
let httpResponse = response as? HTTPURLResponse
print(httpResponse.statusCode) //First time 200, second time onward 304
}.resume()
答案 0 :(得分:0)
尝试将您的缓存策略设置为reloadIgnoringCacheData。
//
状态码304的含义如下
这是代码列表