ProxyAgent се повезује кроз endpoint који му се доставља. За обичан HTTP захтев и proxy који прихвата основну аутентификацију, ставите пријаву на proxy у заглавље Proxy-Authorization тог захтева.

import base64
from twisted.internet.endpoints import TCP4ClientEndpoint
from twisted.web.client import ProxyAgent
from twisted.web.http_headers import Headers

endpoint = TCP4ClientEndpoint(reactor, 'proxy.example', 8080,
                              timeout=5)
agent = ProxyAgent(endpoint, reactor=reactor)
token = base64.b64encode(b'alice:REPLACE_WITH_PROXY_PASSWORD')
headers = Headers({b'Proxy-Authorization': [b'Basic ' + token]})
pending = agent.request(b'GET', b'http://example.com/', headers)

Овај исечак претпоставља да апликација већ има свој reactor. Метод, URI и приказани подаци заглавља користе бајтове. Чувајте стварне акредитиве у извору акредитива апликације; резервисано место само показује како се заглавље гради. Base64 је кодирање, па поверљивост зависи од везе која га преноси.

Враћени Deferred даје објекат одговора. Примање тог објекта не прикупља тело одговора; прочитајте га кроз документовани интерфејс за читање тела и обрађујте асинхроне грешке. Временско ограничење endpoint-а ограничава успостављање везе, не цео животни век одговора.

Пример намерно користи HTTP одредиште. Он не додаје CONNECT преговарање за HTTPS само променом шеме URI-ја.

Повезани чланци