我正在尝试在评估内部的表单发布后打开一个页面。表格发布后有两个重定向,可以是任意数字,然后我找到最后一页。
在评估发布的帖子之后,我尝试通过在下面(2次重定向2次)来处理它。
await page.waitForNavigation({'waitUntil':'domcontentloaded'});
await page.waitForNavigation({'waitUntil':'domcontentloaded'});
以上工作正常但我必须处理任何数量的重定向可能发生的情况。
我不会在DOM上有任何特定的选择器,因为页面可能会多次不同。
以下是我正在使用的代码的一部分:
const formPost = await page.evaluate(a => {
var form = formBuilder("payment_post", "post", acsUrl);
for (var i in a) {
form.add(i, i, 'hidden', a[i]);
}
form.generate("pareqFormContainer");
form.submit();
return document.querySelector('#pareqFormContainer').innerHTML;
}, jsonData)
.then(function () {
logger.info("form submitted with pareq and MD for txnId : " + jsonData.txnId)
});
await page.waitForNavigation({'waitUntil' : 'domcontentloaded', 'timeout' : waitTimeOut});
await page.waitForNavigation({'waitUntil' : 'domcontentloaded', 'timeout' : waitTimeOut});