Mam funkcję AWS Lambda, która musi łączyć się z wewnętrzną witryną, która znajduje się za serwerem proxy. W moim kodu mam następujący sposób:Żądania Pythona w AWS Lambda nie mogą się połączyć z witryną za serwerem proxy
from botocore.vendored import requests
https_proxy = "https://myproxy:myport"
proxyDict = {
"https" : https_proxy
}
request.get("https://myurl.json", proxies=proxyDict)
Running to daje mi się następujący komunikat o błędzie:
HTTPSConnectionPool (host = 'myproxyhost', port = 443): Max prób przekroczenia z adresem URL: myurl. json (Powodowane przez ProxyError ("Nie można połączyć się z serwerem proxy.", gaierror (-2, "Nazwa lub usługa nieznana")))
Próbowałem zastąpić proxied URL adresem google.com, aby potwierdzić, że mogę się połączyć z inne witryny (bez proxy).
Wygląda na to, że przestrzeń adresowa, którą uruchamia Lambda, zostaje zablokowana przez serwer proxy.
Czy jest jeszcze coś, co muszę ustawić z prośbami i lambda, aby to zadziałało?
Możesz dodać https_proxy jako zmienną środowiskową do swojej funkcji lambda. to powinno działać dla ciebie. –
to Twoja wewnętrzna strona internetowa działająca w ramach VPC. Jeśli tak, możesz skonfigurować lambdę na uruchamianie w tej samej VPC i rozwiązywać nazwy wewnętrzne. – toske
Proxy witryny, z którą próbuję się połączyć, nie jest częścią VPC –