אימות פרוקסי ב-Chrome CDP: טיפול בשני נתיבי אירועי Fetch
הפעילו בקשות אימות לפני ניווט, המשיכו בקשות מושהות רגילות והשיבו רק לאתגר ה-Proxy המיועד עם מדיניות ניסיונות מוגבלת.
בסשן ה-CDP הרלוונטי, רשמו את המטפלים לפני הניווט, ואז קראו ל-Fetch.enable עם הפרמטרים האלה:
{"handleAuthRequests": true}| אירוע | נתיב התגובה הנדרש |
|---|---|
| Fetch.requestPaused | continueRequest עם אותו requestId כאשר העבודה הרגילה צריכה להימשך |
| Fetch.authRequired | בדקו את authChallenge, ואז השתמשו ב-continueWithAuth עם ה-requestId של אירוע האימות |
עבור המתווך המזוהה, פרמטרי האימות הם:
{
"requestId": "REQUEST_ID_FROM_AUTH_EVENT",
"authChallengeResponse": {
"response": "ProvideCredentials",
"username": "PROXY_USERNAME",
"password": "PROXY_PASSWORD"
}
}ודאו ש-authChallenge.source הוא Proxy ושמקורו הוא המאתגר המיועד לפני טעינת החשבון ממקור האישורים. אתגר Server פועל לפי מדיניות אימות אחרת.
עקבו אחר הניסיונות המותרים לכל בקשה שיורטה; אתגר שנדחה שוב ושוב צריך לקבל CancelAuth, ולא שליחה אינסופית נוספת. נקו את המעקב עם השלמה או סגירת הסשן.
אם הדף נתקע, בדקו גם אירועי requestPaused שאינם פתורים. טיפול האימות אינו ממשיך אותם אוטומטית, ואף אחד משני נתיבי האירועים אינו בוחר במסלול הפרוקסי של הדפדפן.