Cinn-litte progsaidh a shuidheachadh le HTTPAdapter.proxy_headers aig Requests
Leudaich HTTPAdapter.proxy_headers airson raon a mhìnicheas am progsaidh, fhad 's a chumas tu gineadh nan ceann-litricheadh dearbhaidh progsaidh a th' ann mar-thà ann an Requests.
Airson ceann-litre a mhìnicheas gnìomhaiche a' phrogsaidh, tha Requests a' nochdadh HTTPAdapter.proxy_headers mar àite fuasglaidh:
from urllib.parse import urlsplit
import requests
from requests.adapters import HTTPAdapter
class TaggedProxy(HTTPAdapter):
def proxy_headers(self, proxy):
headers = super().proxy_headers(proxy)
endpoint = urlsplit(proxy)
if (endpoint.scheme == 'http'
and endpoint.hostname == 'proxy.example'
and endpoint.port == 8080):
headers['X-Proxy-Account'] = 'department-a'
return headers
with requests.Session() as session:
adapter = TaggedProxy()
session.mount('http://', adapter)
session.mount('https://', adapter)
response = session.get(
'https://service.example/data',
proxies={'https': 'http://proxy.example:8080'},
timeout=15,
)
Tha X-Proxy-Account na eisimpleir de raon a thuigeas an progsaidh shònraichte seo, chan e an dòigh àbhaisteach air dearbhadh ri gach eadar-mheadhanair.
Tòisich le super().proxy_headers(proxy). Cleachdaidh Requests an dòigh sin gus Proxy-Authorization a chruthachadh nuair a bheir an URL seachad cunntas Basic. Faodaidh cur na h-aonta gu lèir a chall.
Bheir an t-adapter na luachan seo gu ProxyManager urllib3. Ann an tunail HTTPS thèid iad còmhla ri CONNECT. Tha am mapadh àbhaisteach de chinn-litrichean an iarrtais a' toirt cunntas air an iarrtas nas fhaide a-righe gu ceann-uidhe.
Tha manaidsearan progsaidh air an tasgadh a rèir URL a' phrogsaidh. Na dèilig ris a' chroich seo mar fhreagairt gun tasgadh a rèir gach iarrtais gnìomhachais airson luach a dh'fheumas atharrachadh aig gach gairm. Tagh seilbh a' ghiùlain a rèir sin nuair a dh'atharraicheas comharra cunntais.
Ann an cur-air-adhart HTTP sìmplidh, bidh feum aig raointean progsaidh fhathast air a' phoileasaidh caitheamh a tha san amharc aig an eadar-mheadhanair. Chan e dearbhadh dìomhaireachd a th' ann ceann-litre a bhith progsaidh-shònraichte ann an API an neach-cleachdaidh ma chuireas am progsaidh air adhart e.