Nella sessione CDP pertinente, registra i gestori prima della navigazione, poi chiama Fetch.enable con questi parametri:

{"handleAuthRequests": true}
EventoPercorso di risposta richiesto
Fetch.requestPausedcontinueRequest con quello requestId quando il lavoro ordinario deve proseguire
Fetch.authRequiredIspeziona authChallenge, poi usa continueWithAuth con il requestId dell'evento di autenticazione

Per l'intermediario riconosciuto, i parametri di autenticazione sono:

{
  "requestId": "REQUEST_ID_FROM_AUTH_EVENT",
  "authChallengeResponse": {
    "response": "ProvideCredentials",
    "username": "PROXY_USERNAME",
    "password": "PROXY_PASSWORD"
  }
}

Verifica che authChallenge.source sia Proxy e che la sua origine sia lo sfidante previsto prima di caricare l'account dall'origine delle credenziali. Una sfida Server segue un'altra politica di autenticazione.

Tieni traccia dei tentativi consentiti per ogni richiesta intercettata; una sfida rifiutata ripetutamente deve ricevere CancelAuth, non un altro invio senza fine. Cancella la traccia al completamento o alla chiusura della sessione.

Se la pagina si blocca, ispeziona anche gli eventi requestPaused irrisolti. La gestione dell'autenticazione non li prosegue automaticamente e nessuno dei due percorsi degli eventi sceglie la rotta proxy del browser.

Articoli correlati