Как насчет того, когда вы вызываете interceptedRequest.continue();
после этого блока?
if (interceptedRequest.url() === samlUrl) {
onBeforeRequestEvent(interceptedRequest);
}
interceptedRequest.continue();
Хотя кажется, что это будет то же самое, поскольку оба являются просто асинхронными обещаниями.
Специально для этой строки, When I hit "Yes" on my phone to allow a login it begins navigating, but goes nowhere.
, иногда Google 2FA занимает немного много времени, чтобы завершить работу, даже если вы нажали YES на своем телефоне.
И, наконец, виновником, кажется, является эта строка,
await page.goto(new URL(authUrl).href);
await page.waitForRequest(samlUrl);
Как можноВы уверены, что запрос происходит после перехода на страницу?waitForRequest остановит выполнение, пока не произойдет запрос.Если вы уверены, что оба произойдут, но не уверены, какой из них произойдет первым, тогда вы можете использовать старый добрый Promise.all
await Promise.all([
page.waitForRequest(samlUrl),
page.goto(new URL(authUrl).href)
])