Julias standardbibliotek Downloads använder libcurl. Ange proxy-miljön innan processen som utför nedladdningen startas:

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

Ett exempel på fetch.jl kan använda det vanliga Downloads-API:et:

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

Variabeln https_proxy väljer vägen till en HTTPS-destination; värdet http:// anger en vanlig HTTP-proxy. För nedladdningar som tillåts använda offentliga endpoints erbjuder HTTP-proxylistan kandidater för det värdet. Ändra inte det värdet till https:// om inte proxy-lyssnaren själv stöder TLS.

libcurl accepterar http_proxy endast med små bokstäver. Andra protokollproxyvariabler har också versaler. Dess kringgående konvention är no_proxy eller NO_PROXY, med kommaavskilda poster; http_no_proxy är inte den dokumenterade allmänna kringgåendevariabeln.

En Julia-process som startas av en IDE eller en bakgrundstjänst ärver den startarens miljö. En variabel som exporteras senare i en annan terminal konfigurerar inte om den.

För diagnostik accepterar Downloads.download verbose=true, och dess felsökningscallback kan ta emot detaljerade transportshändelser. Granska utdata lokalt och ta bort hemligheter innan du delar dem.

Ett paket som använder en annan HTTP-implementering behöver en egen genomgång av konfigurationen. Ett lyckat Downloads-anrop fastställer beteendet för just den begäran, inte för varje nätverksoperation skriven i Julia.

Relaterade artiklar