Standardbiblioteket Downloads i Julia brukar libcurl. Set proxy-miljøet før prosessen som gjer nedlastinga, vert starta:

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

Eit døme på fetch.jl kan bruke det vanlege Downloads-API-et:

using Downloads
Downloads.download(
    "https://downloads.example/data.csv",
    "data.csv";
    timeout = 30,
)

Variabelen https_proxy vel ruta til ein HTTPS-destinasjon; verdien http:// viser til ein vanleg HTTP-proxy. For nedlastingar som har løyve til å bruke offentlege endepunkt, gir HTTP-proxy-lista kandidatar for den verdien. Ikkje endre den verdien til https:// med mindre proxy-lyttaren sjølv støttar TLS.

libcurl godtek berre http_proxy med små bokstavar. Andre protokollproxyvariablar har òg store bokstavar. Bypass-konvensjonen er no_proxy eller NO_PROXY, med kommaåtskilde oppføringar; http_no_proxy er ikkje den dokumenterte generelle bypass-variabelen.

Ein Julia-prosess som vert starta av ein IDE eller ei bakgrunnsteneste, arvar miljøet til den som starta han. Ein variabel som vert eksportert seinare i ein annan terminal, omkonfigurerer han ikkje.

For diagnostikk godtek Downloads.download verbose=true, og feilsøkingscallbacken kan ta imot detaljerte transporthendingar. Gå gjennom utdataa lokalt og fjern løyndomar før du deler dei.

Ein pakke som brukar ein annan HTTP-implementasjon treng si eiga gjennomgang av konfigurasjonen. Eit vellukka Downloads-kall fastset åtferda til nettopp den førespurnaden, ikkje kvar nettverksoperasjon skriven i Julia.

Relaterte artiklar