HTTP proxy دىن كەلگەن Basic خىرىسى ئۈچۈن ProxyBasicAuthHandler نى ئىشلىتىڭ. بۇ ئادەتتىكى HTTP مىسالى يول ۋە ھېساباتنى بىر opener دا ساقلايدۇ:

import os
from urllib.request import (
    ProxyHandler, ProxyBasicAuthHandler,
    HTTPPasswordMgrWithDefaultRealm, build_opener,
)

proxy_url = 'http://proxy.example:8080'
passwords = HTTPPasswordMgrWithDefaultRealm()
passwords.add_password(
    None, proxy_url,
    os.environ['PROXY_USER'], os.environ['PROXY_PASSWORD'],
)
opener = build_opener(
    ProxyHandler({'http': proxy_url}),
    ProxyBasicAuthHandler(passwords),
)
with opener.open('http://example.com/', timeout=10) as response:
    print(response.status)

ھەقىقىي ئاخىرلاشقۇچى نۇقتا ۋە مەشغۇلاتچى بەرگەن ھېساباتنى ئىشلىتىڭ. بۇ بىر تەرەپ قىلغۇچ proxy نىڭ خىرىسى ئۈچۈن پارول باشقۇرغۇچنى ئىشلىتىدۇ؛ كۆزلىتىلگەن proxy URI ۋە realm نى ماسلاشتۇرۇڭ. نىشاندىكى Basic دەلىللەش باشقا بىر تەرەپ قىلغۇچنى ئىشلىتىدۇ.

opener نى بىۋاسىتە چاقىرىش بۇ تەڭشەكنى يەرلىك ساقلايدۇ. تەلەپنىڭ URL ى ۋاسىتىچى ئەمەس، توربېكەت بولۇپ قالىدۇ. بۇ ئوچۇق HTTP يولى Basic ئالماشتۇرۇشنى شىفىرلىمايدۇ.

بۇ مىسالنىڭ HTTPS تونېل قوللىشى دەپ ھۆكۈم قىلماڭ. CONNECT جەريانىدىكى 407 تەڭشەش جەريانىدا، نىشاننىڭ ئادەتتىكى جاۋابىدىن ئىلگىرى يۈز بېرىدۇ؛ تاللانغان بىرلەشمە دەلىللەشنى شۇ يەردە بىر تەرەپ قىلىشى كېرەك. توربېكەتنىڭ كىرىش بىر تەرەپ قىلغۇچىنى ئالماشتۇرۇش ئۇ ئىلگىرىكى خىرىسنى ئوڭشىيالمايدۇ.

ھوقۇق گۇۋاھلىقىنى ئېلىپ يۈرگەن proxy URL لار كونا مىساللاردا كۆرۈلىدىغان باشقا فورمات. ئىشلەتسىڭىز، URL ئايرىغۇچلىرىنى توغرا كودلاڭ ۋە شەكىللەنگەن مەخپىيەتلىك URL نى خاتىرىلەردىن سىرت ساقلاڭ.

مۇناسىۋەتلىك ماقالىلەر