gpt4 book ai didi

ios - NSUrlsession RequestCachePolicy 返回 304 而不是 200

转载 作者:行者123 更新时间:2023-11-29 05:36:00 24 4
gpt4 key购买 nike

我将 URLSessionuseProtocolCachePolicy 结合使用。我得到的是 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()

最佳答案

尝试将缓存策略设置为 reloadIgnoringCacheData。

request.cachePolicy = .reloadIgnoringCacheData

状态码304含义如下

  • 如果客户端执行了有条件的 GET 请求并且访问是允许,但文档尚未被修改,服务器应该使用此状态代码进行响应。 304 响应不得包含消息正文,因此总是以第一个空行结束在标题字段之后。在此处检查 HTTPS 状态代码。

这是代码列表

HTTPS Status Codes

关于ios - NSUrlsession RequestCachePolicy 返回 304 而不是 200,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57036643/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com