Proxy-miljøvariabler til Julia-downloads
Angiv libcurl-kompatible proxyvariabler, før Julia startes, og diagnosticér Downloads-anmodningen i stedet for at antage, at hver pakke bruger samme backend.
Julias standardbibliotek Downloads bruger libcurl. Angiv proxy-miljøet, før processen, der udfører downloadet, startes:
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
Et eksempel på fetch.jl kan bruge det almindelige Downloads-API:
using Downloads
Downloads.download(
"https://downloads.example/data.csv",
"data.csv";
timeout = 30,
)
Variablen https_proxy vælger ruten til en HTTPS-destination; værdien http:// angiver en almindelig HTTP-proxy. Til downloads, der må bruge offentlige endpoints, giver HTTP-proxy-listen kandidater til den værdi. Skift ikke den værdi til https://, medmindre proxy-lytteren selv understøtter TLS.
libcurl accepterer kun http_proxy med små bogstaver. Andre protokolproxyvariabler har også store bogstaver. Dets omgåelseskonvention er no_proxy eller NO_PROXY med kommaseparerede poster; http_no_proxy er ikke den dokumenterede generelle omgåelsesvariabel.
En Julia-proces, der startes af en IDE eller en baggrundstjeneste, arver den startendes miljø. En variabel, der eksporteres senere i en anden terminal, omkonfigurerer den ikke.
Til diagnosticering accepterer Downloads.download verbose=true, og dets debug-callback kan modtage detaljerede transporthændelser. Gennemgå outputtet lokalt, og fjern hemmeligheder, før du deler det.
En pakke, der bruger en anden HTTP-implementering, kræver sin egen konfigurationsgennemgang. Et vellykket Downloads-kald fastslår adfærden for netop den anmodning, ikke for enhver netværksoperation skrevet i Julia.