Uwierzytelnianie przez proxy w Chrome CDP: obsługa obu ścieżek zdarzeń Fetch
Włącz żądania uwierzytelniania przed nawigacją, kontynuuj zwykłe wstrzymane żądania i odpowiadaj tylko na zamierzone wyzwanie Proxy z ograniczoną polityką prób.
W odpowiedniej sesji CDP zarejestruj procedury obsługi przed nawigacją, a następnie wywołaj Fetch.enable z tymi parametrami:
{"handleAuthRequests": true}| Zdarzenie | Wymagana ścieżka odpowiedzi |
|---|---|
| Fetch.requestPaused | continueRequest z tym requestId, gdy zwykła praca ma być kontynuowana |
| Fetch.authRequired | Sprawdź authChallenge, a następnie użyj continueWithAuth z requestId zdarzenia uwierzytelniania |
Dla rozpoznanego pośrednika parametry uwierzytelniania są następujące:
{
"requestId": "REQUEST_ID_FROM_AUTH_EVENT",
"authChallengeResponse": {
"response": "ProvideCredentials",
"username": "PROXY_USERNAME",
"password": "PROXY_PASSWORD"
}
}Przed wczytaniem konta ze źródła poświadczeń sprawdź, czy authChallenge.source to Proxy i czy jego pochodzenie to zamierzony wyzywający. Wyzwanie Server podlega innej polityce uwierzytelniania.
Śledź dozwolone próby dla każdego przechwyconego żądania; wielokrotnie odrzucone wyzwanie powinno otrzymać CancelAuth, a nie kolejne niekończące się zgłoszenie. Czyść śledzenie po zakończeniu lub zamknięciu sesji.
Jeśli strona zawiesza się, sprawdź także nierozwiązane zdarzenia requestPaused. Obsługa uwierzytelniania nie kontynuuje ich automatycznie i żadna ze ścieżek zdarzeń nie wybiera trasy proxy przeglądarki.