Boto3 prihvata eksplicitnu politiku proxyja kroz botocore objekt Config:

import boto3
from botocore.config import Config

network = Config(proxies={
    'http': 'http://proxy.example:8080',
    'https': 'http://proxy.example:8080',
})
s3 = boto3.client('s3', config=network)

Ključevi mape biraju protokol odredišta. Vrijednosti opisuju proxy krajnju tačku. Ovaj primjer šalje i HTTP i HTTPS zahtjeve usluga kroz jedan HTTP forward proxy. Za dozvoljeni test javne AWS krajnje tačke bez proxy računa, HTTP unos s liste HTTP proxyja može dati ta dva URL-a.

Vrijednost https:// bi umjesto toga zahtijevala proxy poslušalac koji prihvata TLS vezu od klijenta. Ne mijenjajte šemu vrijednosti samo da bi odgovarala ključu HTTPS.

Config.proxies nadjačava izbor proxyja iz varijabli okruženja HTTP_PROXY i HTTPS_PROXY za taj klijent. Drugi klijenti mogu se graditi sa svojim Config objektima; izgradnja ovog ne mijenja varijablu okruženja na nivou procesa.

Sačuvajte sve druge potrebne opcije klijenta, kao što su regija i politika ponovnog pokušaja, kada ovo ugrađujete u aplikaciju. AWS akreditive ostaju u uobičajenoj konfiguraciji akreditiva aplikacije. Nije potrebna izmjena EndpointCreator ili neke druge privatne botocore metode.

Za TLS vezu s HTTPS proxyjem, Config ima i opcije proxies_config kao što su proxy_ca_bundle i proxy_client_cert. One se tiču povjerenja i autentifikacije klijentskog certifikata na proxy vezi. Odvojene su od biranja AWS krajnje tačke usluge ili potpisivanja AWS API zahtjeva.

Povezani članci