Det R som är installerat i en Conda-miljö kan använda ett annat libcurl-bygge än curl-körbarfilen i terminalen. Fråga den R-session som misslyckas vilket bibliotek den faktiskt har:

info <- libcurlVersion()
info
attr(info, 'ssl_version')
attr(info, 'protocols')

Teckenvärdet rapporterar versionen av den länkade libcurl. Dess attribut ssl_version identifierar TLS-implementeringen, medan protocols listar de målprotokoll som biblioteket stöder. De beskriver Rs inbyggda libcurl-väg, inte ett shell-kommando som heter curl.

Jämför rapporten med nedladdningsmetoden

download.file med method='libcurl' använder det här biblioteket. method='curl' startar den externa körbara filen. Det nuvarande automatiska HTTP(S)-valet använder libcurl, och ett download.file.method-alternativ med värdet NULL kan låta den standarden gälla.

Kör undersökningen i den faktiska miljö som jobbet eller IDE:n väljer. En annan R-installation kan rapportera en annan version eller TLS-backend även när dess skript ser identiska ut.

Ett listat https-protokoll betyder att HTTPS-mål stöds. Det bevisar inte att en viss proxy-lyssnare accepterar TLS. En vanlig HTTP-proxy för en HTTPS-nedladdning har fortfarande en proxy-URL med http://.

Spara biblioteksrapporten tillsammans med den valda metoden och anslutningsfelet. Certifikatfel, ett proxy-schema som inte stöds och en nekad lyssnare är fortfarande olika fynd; ett versionsnummer ensamt är inte deras diagnos.

Relaterade artiklar