Berriz baliozkotu proxy bidezko deskarga bat Cache-Control: no-cache erabiliz
Eskatu baliozkotutako erantzun bat deskargaren URLa aldatu gabe eta berbalidazioa biltegiratze-debekuekin nahastu gabe.
Deskargaren URLa zuzena da, baina proxy partekatu batek oraindik gordetako erantzun bat du. Eragiketak jatorriarekin baliozkotutako erantzuna behar badu, jarri baldintza hori eskaeran:
from urllib.request import ProxyHandler, Request, build_opener
import shutil
opener = build_opener(ProxyHandler({
"https": "http://proxy.example:8080",
}))
request = Request(download_url, headers={"Cache-Control": "no-cache"})
with opener.open(request, timeout=15) as response:
shutil.copyfileobj(response, output)
Zati honek suposatzen du aplikazioak irteera-fluxu bitarra duela eta HTTPS download_url bat ematen duela. Proxy-autentifikaziorik gabeko deskarga publiko baimendua probatzeko, erabili HTTP amaierako puntu hautagai bat HTTP proxy zerrendatik openerrean; eskaeraren cache-baldintzak berdin jarraitzen du. Jatorrizko baliabidearen URLa mantentzen du, bideko cacheei berrerabili aurretik baliozkotzeko eskatuz.
Baliozkotzeak gordetako byteak berrerabili ditzake
no-cache jasotzen duen cache adostu batek ezin du eskaera hau gordetako erantzun batetik bete jatorriarekin behar bezala baliozkotu gabe. Jatorriak gordetako errepresentazioa baliozkoa izaten jarraitzen duela baiezta dezake, beraz eragiketak ez du fitxategi aldagaitzik jatorritik berriz bidali behar.
Eskaera baten max-age=0 balioak adin-muga bat adierazten du. Erabilgarria da aplikazioak muga hori baino zaharragoa ez den erantzun bat nahi duenean, baina ez da biltegiratze-debekua. Oraintxe sortutako erantzun batek bete dezake.
Ausazko query parametro bat gehitzeak beste helburu-URI bat eskatzen du. Horrek beste cache-sarrera bat sor dezake edo aplikazioaren erantzuna ere alda dezake. Erabili query parametroa soilik baliabidearen aurreikusitako interfazearen parte denean.
HTTPS CONNECT arrunterako, tunel-proxyak ezin du goiburu hau TLS barruan ikusi. Politikak jatorrira eta deskifratutako HTTP trukea kudeatzen duten cacheetara irits daiteke oraindik. Egiaztatu gordetako erantzuna non dagoen benetan tunelari egotzi aurretik.