背景
我在本地运行Puppeteer工作正常。当我将它移动到生产的debian服务器时,它会超时
page.goto(url)
功能。
示例
我在网上尝试了很多不同的建议。在下面的示例中,您将看到我尝试过的一些在线建议的选项。我已经单独尝试过这些并且彼此不同的组合。是的,我现在非常绝望。
const browser = await puppeteer.launch({
args: [
'--no-sandbox',
'--disable-setuid-sandbox',
'--ignore-certificate-errors',
'--ignore-certificate-errors-spki-list',
'--user-data-dir']});
const page = await browser.newPage();
await page.goto(
`https://example.com/${template}?data=${JSON.stringify(req.body)}`, {waitUntil: 'networkidle0'}
);
page.goto(url)在本地工作,但在服务器上运行时失败。
问题
为什么page.goto()
在服务器上失败并且是否有任何解决方法?
答案 0 :(得分:1)
page.setDefaultNavigationTimeout
是您的选择
const browser = await puppeteer.launch({
args: [
'--no-sandbox',
'--disable-setuid-sandbox',
'--ignore-certificate-errors',
'--ignore-certificate-errors-spki-list',
'--user-data-dir']});
const page = await browser.newPage();
page.setDefaultNavigationTimeout(3600); // 1 hour
await page.goto(
`https://example.com/${template}?data=${JSON.stringify(req.body)}`, {waitUntil: 'networkidle2'}
);