Proxy-Authentifizierung in Chrome CDP: beide Fetch-Ereignispfade behandeln
Aktiviere Authentifizierungsanfragen vor der Navigation, setze gewöhnliche pausierte Anfragen fort und beantworte nur die vorgesehene Proxy-Challenge mit einer begrenzten Versuchsrichtlinie.
Registriere in der betreffenden CDP-Sitzung die Handler vor der Navigation und rufe dann Fetch.enable mit diesen Parametern auf:
{"handleAuthRequests": true}| Ereignis | Erforderlicher Antwortpfad |
|---|---|
| Fetch.requestPaused | continueRequest mit dieser requestId, wenn gewöhnliche Arbeit fortgesetzt werden soll |
| Fetch.authRequired | Prüfe authChallenge und nutze dann continueWithAuth mit der requestId des Authentifizierungsereignisses |
Für den erkannten Vermittler lauten die Authentifizierungsparameter:
{
"requestId": "REQUEST_ID_FROM_AUTH_EVENT",
"authChallengeResponse": {
"response": "ProvideCredentials",
"username": "PROXY_USERNAME",
"password": "PROXY_PASSWORD"
}
}Prüfe, ob authChallenge.source gleich Proxy ist und der Ursprung der vorgesehene Auslöser ist, bevor das Konto aus der Anmeldedatenquelle geladen wird. Eine Server-Challenge folgt einer anderen Authentifizierungsrichtlinie.
Verfolge zulässige Versuche pro abgefangener Anfrage; eine wiederholt abgelehnte Challenge sollte CancelAuth erhalten, keine weitere endlose Übermittlung. Lösche die Nachverfolgung bei Abschluss oder Sitzungsende.
Wenn die Seite hängt, prüfe auch ungelöste requestPaused-Ereignisse. Die Authentifizierungsbehandlung setzt sie nicht automatisch fort, und keiner der beiden Ereignispfade wählt die Proxy-Route des Browsers.