Faodaidh ProxyAgent ceangal gu luath agus an uair sin feitheamh gun chrìoch air bodhaig freagairt. Chan eil crìoch-ùine ceangail a' phuing-deiridh progsaidh a' toirt cunntas air an fheitheamh sin nas fhaide air adhart.

Suidhich crìoch ceangail air a' phuing nuair a thogas tu an gniomhaire. Airson an iarrtais HTTP phoblach gu h-ìosal, faodaidh tagraiche gun dearbhadh bhon liosta progsaidh HTTP an seòladh ùrachadh ma tha cead aig eadar-mheadhanairean poblach:

endpoint = TCP4ClientEndpoint(reactor, 'proxy.example', 8080,
                              timeout=5)
agent = ProxyAgent(endpoint, reactor=reactor)

Airson freagairt bheag a tha thu airson a chruinneachadh sa chuimhne, cuir leughadh a' bhodhaig a-steach don t-sreath Deferred mus cuir thu an ceann-latha ris:

from twisted.web.client import readBody

d = agent.request(b'GET', b'http://example.com/')
d.addCallback(readBody)
d.addTimeout(10, reactor)
d.addCallback(lambda body: print(len(body)))
d.addErrback(lambda failure: print(failure.getErrorMessage()))

Tha am pìos a' gabhail ris gu bheil an reactor agus an gniomhaire rèitichte aig an aplacaid mu thràth. Bheir Deferred iarrtas ProxyAgent nì freagairt; bheir readBody an Deferred airson a' bhodhaig. Ma thilleas tu e bhon callback bidh an t-sreath a' feitheamh ris an obair sin cuideachd.

Tha an t-àite cudromach. Cuiridh Twisted addTimeout an sàs anns an obair a tha na callbacks a chaidh an cur a-steach roimhe a' riochdachadh. Chuireadh leughadair bodhaig a chuirear ris an dèidh sin crìoch eile an cèill. San rèiteachadh seo tòisichidh an t-astar nuair a thèid addTimeout a ghairm agus còmhdaichidh e an t-iarrtas a tha a' feitheamh agus obair a' bhodhaig san t-sreath sin.

Cleachd neach-caitheamh sruthaidh airson bodhaigean mòra no gun chrìoch agus seall a chrìochnachadh san aon dòigh. Cuiridh ceann-latha air taobh a' chliant crìoch air cho fada sa dh'fheitheas an aplacaid agad; chan ath-rèitich e crìoch-ùine ceangail suas a' phrogsaidh fhèin.

Artaigilean co-cheangailte