L'helper use_proxy di httr accetta insieme l'account proxy e lo schema di autenticazione. Per una chiamata httr di livello superiore, la stessa configurazione può essere applicata attorno a un'espressione scelta:

route <- httr::use_proxy(
  'proxy.example',
  port = 8080,
  username = Sys.getenv('PROXY_USER'),
  password = Sys.getenv('PROXY_PASSWORD'),
  auth = 'ntlm'
)
response <- httr::GET('https://api.example/items', route)

Usare ntlm solo quando il proxy offre quello schema e la build di libcurl installata lo supporta. Se lo scambio fallisce ancora, la diagnostica proxy NTLM di curl spiega la sfida, il supporto della build e i controlli di continuità della connessione. Per un proxy che attende Basic, selezionare auth = 'basic'. Basic è l'impostazione predefinita di use_proxy; fornire solo un nome utente in stile Windows non seleziona NTLM.

L'helper mappa questi valori sulle opzioni proxyuserpwd, proxyport e proxyauth di libcurl. L'argomento port deve essere numerico.

Un 407 riguarda l'accesso al proxy. Un account fornito all'API tramite httr::authenticate o un'intestazione Authorization dell'applicazione ha un destinatario diverso.

Conservare l'endpoint reale del proxy e la sfida annunciata con il rapporto di errore, escludendo i segreti. Un account errato, uno schema errato e un metodo di autenticazione non supportato richiedono correzioni diverse; modificare la verifica del certificato non sceglie tra esse.

Articoli correlati