Requests PreparedRequest agus suidheachaidhean àrainneachd a tha a dhìth
Cùm iarrtasan ullaichte sònraichte co-chòrdail ri làimhseachadh àbhaisteach Requests de phrogsaidhean is CA, gun a bhith a’ gabhail ris gu bheil gach send ìosal gan leigeil seachad.
Faodaidh iarrtas obrachadh tro session.get() agus fàiligeadh aig dearbhadh teisteanais an dèidh ath-sgrìobhadh mar PreparedRequest. Chan eil an t-slighe send aig ìre ìosal a’ dèanamh an aon aonachadh àrainneachd ris a’ mhodh request àbhaisteach.
import requests
with requests.Session() as session:
request = requests.Request("GET", "https://example.com/")
prepared = session.prepare_request(request)
settings = session.merge_environment_settings(
prepared.url, {}, None, None, None
)
response = session.send(
prepared,
timeout=(5, 15),
**settings,
)
response.raise_for_status()
print(response.status_code)
Dèan an t-aonachadh leis an URL ullaichte dheireannach, às dèidh atharrachaidhean URL sam bith a tha san amharc. Tha co-dhùnaidhean progsaidh agus seachnaidh an urra ris a’ cheann-uidhe, agus faodaidh suidheachaidhean airson URL nas tràithe a bhith ceàrr airson an iarrtais a chuireas tu.
Tha e furasta an suidheachadh CA a chall
Le earbsa àbhaisteach san àrainneachd air, beachdaichidh an t-aonachadh air REQUESTS_CA_BUNDLE agus an cùl-taic CURL_CA_BUNDLE nuair nach deach dearbhadh a thar-àithneadh gu soilleir. Chan eil gairm dhìreach send leis an verify bhunaiteach a’ dèanamh an lorg CA sin. Tha cur dheth an dearbhaidh a’ falach an diofair seach a bhith a’ toirt seachad an stòr teisteanais a tha san amharc.
Tha Session.prepare_request() cuideachd a’ cur an gnìomh giùlan ullachaidh an t-seisein. Tha cruthachadh iarrtais dìreach le Request.prepare() na roghainn eile; na bi an dùil gun cleachd e briosgaidean seisein no ullachadh seisein eile gu fèin-obrachail.
Tha riaghailt nas mionaidiche aig progsaidhean
Bhiodh e mearachdach a ràdh gu bheil gach PreparedRequest a’ leigeil seachad caochladairean àrainneachd progsaidh. Ann an Requests 2.34.2, lorgaidh send bun-roghainnean progsaidh nuair a tha an argamaid ainmichte proxies a dhìth. Ma bheir thu proxies={} do send, thèid am meur sònraichte sin seachad.
Tha dreuchd eile aig an fhaclair fhalamh a gheibh merge_environment_settings: faodaidh an t-aonachadh a lìonadh le slighean àrainneachd iomchaidh mus tèid e gu send. Tha coimhead air faclair falamh ann an dà phìos a-mhàin a’ call nan diofar mhodhan a gheibh e.
Ann an còd togail iarrtais sònraichte, cùm ullachadh, aonachadh àrainneachd agus cur còmhla. Nuair a chleachdas an aplacaid trust_env=False a dh’aona ghnothach, bheir an t-aonachadh urram dhan phoileasaidh sin; chan e dòigh a th’ ann air àrainneachd a sparradh air cliant a chuir dheth i a dh’aona ghnothach.