د Cache-Control: no-cache سره د پروکسي له لارې ډاونلوډ بیا تایید کړئ
د ډاونلوډ URL پرته له بدلون تایید شوې ځواب وغواړئ او بیا تایید د ذخیرې له بندیز سره مه ګډوئ.
د ډاونلوډ URL سم دی، خو شریک پروکسي لا هم یو ذخیره شوی ځواب لري. که چېرې عملیات د اصل سره تایید شوی ځواب ته اړتیا لري، هغه شرط پر غوښتنه کېږدئ:
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)
دا ټوټه فرض کوي چې اپلیکیشن باینري وتنې جریان لري او HTTPS download_url برابروي. د پروکسي تصدیق پرته د اجازه ورکړل شوي عامه ډاونلوډ هڅه کولو لپاره، په opener کې د HTTP پروکسي لیست څخه HTTP د پای نقطې نوماند وکاروئ؛ د غوښتنې د کیش شرط هماغه پاتې کېږي. دا د سرچینې اصلي URL ساتي او په هماغه وخت کې د غوښتنې پر لار د کیشونو څخه غواړي چې د بیا کارولو دمخه تایید وکړي.
تایید کولی شي ذخیره شوي بایټونه بیا وکاروي
د no-cache ترلاسه کوونکی مطابق کیش نشي کولی دا غوښتنه له ذخیره شوي ځواب څخه پرته له اصل سره د بریالي تایید څخه پوره کړي. اصل کولی شي تایید کړي چې ذخیره شوی استازیتوب لا هم معتبر دی، نو عملیات اړ نه دي چې بدل شوی نه وي فایل له اصل څخه بیا واستوي.
په غوښتنه کې max-age=0 د عمر حد څرګندوي. دا ګټور دی کله چې اپلیکیشن هغه ځواب غواړي چې له دې حد څخه زوړ نه وي، خو دا د ذخیرې بندیز نه دی. همدا اوس جوړ شوی ځواب کولی شي دا پوره کړي.
د تصادفي پوښتنې پیرامیټر زیاتول بل هدف URI غواړي. دا کېدای شي بله کیش ننوتنه جوړه کړي یا حتی د اپلیکیشن ځواب بدل کړي. د پوښتنې پیرامیټر یوازې هغه وخت وکاروئ چې د سرچینې د پام وړ انټرفیس برخه وي.
د عادي HTTPS CONNECT لپاره، د تونل پروکسي نشي کولی دا سرلیک د TLS دننه وویني. پالیسي بیا هم کولی شي اصل او هغه کیشونو ته ورسېږي چې د کوډ پرانیستل شوي HTTP تبادله سمبالوي. مخکې لدې چې ذخیره شوی ځواب تونل ته منسوب کړئ، وګورئ چې هغه په حقیقت کې چېرې دی.