eth*_*jyx 19 python python-requests
requestsPython包是否默认缓存数据?
例如,
import requests
resp = requests.get('https://some website')
Run Code Online (Sandbox Code Playgroud)
响应是否会被缓存?如果是,我该如何清除它?
jon*_*s77 14
添加'Cache-Control: no-cache'标题:
self.request = requests.get('http://google.com',
headers={'Cache-Control': 'no-cache'})
Run Code Online (Sandbox Code Playgroud)
答案较晚,但是python请求 不会缓存请求,您应该使用标头 Cache-Control,Pragma而改为:
import requests
headers = {
...
"Cache-Control": "no-cache",
"Pragma": "no-cache"
}
x = requests.get("site.tld", headers=headers)
...
Run Code Online (Sandbox Code Playgroud)
Cache-Control
Cache-Control general-header字段用于为请求和响应中的缓存机制指定指令。高速缓存指令是单向的,这意味着请求中的给定指令并不意味着在响应中要给出相同的指令。
Pragma
特定于实现的标头,可能在请求-响应链的任何地方产生各种影响。用于与尚不存在Cache-Control标头的HTTP / 1.0缓存向后兼容。
指示
no-cache
强制缓存在释放缓存的副本之前将请求提交给原始服务器以进行验证。
注意Pragma:
没有为HTTP响应指定Pragma,因此它不是常规HTTP / 1.1 Cache-Control标头的可靠替代,尽管它的行为与Cache-Control:no-cache相同,但如果在其中省略了Cache-Control标头字段,一个要求。仅将Pragma用于与HTTP / 1.0客户端向后兼容。
| 归档时间: |
|
| 查看次数: |
23430 次 |
| 最近记录: |