Proxy-omgevingsvariabelen voor Julia-downloads
Zorg voor libcurl-compatibele proxyvariabelen voordat u Julia start en diagnosticeer het Downloads-verzoek in plaats van aan te nemen dat elk pakket dezelfde backend gebruikt.
De standaardbibliotheek Downloads van Julia gebruikt libcurl. Stel de proxy-omgeving in voordat het proces dat de download uitvoert, start:
export http_proxy='http://proxy.example:8080'
export https_proxy='http://proxy.example:8080'
export no_proxy='localhost,127.0.0.1'
julia fetch.jl
Een voorbeeld fetch.jl kan de gewone Downloads-API gebruiken:
using Downloads
Downloads.download(
"https://downloads.example/data.csv",
"data.csv";
timeout = 30,
)
De variabele https_proxy kiest de route naar een HTTPS-bestemming; de waarde http:// geeft een gewone HTTP-proxy aan. Voor downloads die openbare endpoints mogen gebruiken, biedt de HTTP-proxylijst kandidaten voor die waarde. Wijzig die waarde niet in https:// tenzij de proxylistener zelf TLS ondersteunt.
libcurl accepteert http_proxy alleen in kleine letters. Andere protocolproxyvariabelen hebben ook hoofdlettervormen. De bypass-conventie is no_proxy of NO_PROXY, met kommagescheiden vermeldingen; http_no_proxy is niet de gedocumenteerde algemene bypassvariabele.
Een Julia-proces dat door een IDE of achtergronddienst wordt gestart, erft de omgeving van die starter. Een variabele die later in een andere terminal wordt geëxporteerd, configureert het niet opnieuw.
Voor diagnose accepteert Downloads.download verbose=true, en de foutopsporingscallback kan gedetailleerde transportgebeurtenissen ontvangen. Bekijk die uitvoer lokaal en verwijder geheimen voordat u deze deelt.
Een pakket dat een andere HTTP-implementatie gebruikt, vereist een eigen controle van de configuratie. Een geslaagde Downloads-aanroep stelt het gedrag van die aanvraag vast, niet van elke netwerkbewerking die in Julia is geschreven.