Diagnòstic de proxy a R: versió de libcurl, backend TLS i protocols
Inspeccioneu la versió, la implementació TLS i els atributs de protocol del libcurl enllaçat a R per separat de l'executable curl extern.
L'R instal·lat en un entorn Conda pot utilitzar una compilació de libcurl diferent de l'executable curl del terminal. Pregunteu a la sessió R que falla quina biblioteca té realment:
info <- libcurlVersion()
info
attr(info, 'ssl_version')
attr(info, 'protocols')
El valor de caràcters informa de la versió del libcurl enllaçat. El seu atribut ssl_version identifica la implementació TLS, mentre que protocols llista els protocols de destinació que admet aquesta biblioteca. Descriuen el camí libcurl integrat d'R, no una ordre de shell anomenada curl.
Feu coincidir l'informe amb el mètode de baixada
download.file amb method='libcurl' utilitza aquesta biblioteca. method='curl' llança l'executable extern. La selecció automàtica actual d'HTTP(S) utilitza libcurl, i una opció download.file.method NULL pot deixar aquest valor per defecte.
Executeu la inspecció a l'entorn real que seleccioni la feina o l'IDE. Una altra instal·lació d'R pot informar d'una versió o d'un backend TLS diferents encara que els seus scripts semblin idèntics.
Un protocol https llistat significa que les destinacions HTTPS són compatibles. No demostra que un determinat oient de proxy accepti TLS. Un proxy HTTP ordinari per a una baixada HTTPS encara té una URL de proxy http://.
Conserveu l'informe de la biblioteca juntament amb el mètode triat i l'error de connexió. Un certificat fallit, un esquema de proxy no compatible i un oient rebutjat continuen sent troballes diferents; un número de versió sol no és el seu diagnòstic.