Node.js Nodejs木偶演员不';t发射

Node.js Nodejs木偶演员不';t发射,node.js,puppeteer,Node.js,Puppeteer,我试图在NodeJs/express项目中使用木偶演员。我是一个非常新的使用,所以提前道歉,如果问题是相当愚蠢的 我的路线上有一个代码: const puppeteer = require('puppeteer'); router.post('/new_window', async (req, res) => { try { const browser = await puppeteer.launch(); const page = await browser.ne

我试图在NodeJs/express项目中使用木偶演员。我是一个非常新的使用,所以提前道歉,如果问题是相当愚蠢的

我的路线上有一个代码:

const puppeteer = require('puppeteer');
router.post('/new_window', async (req, res) => {
  try {
     const browser = await puppeteer.launch();
     const page = await browser.newPage();
     await page.goto('https://example.com');
     await page.screenshot({path: 'example.png'});
     // await browser.close();
  } catch (err) {
     res.status(500)
     console.log(err)
     res.send(err.message)
  }
})
我希望新窗口将打开example.com页面。但是什么都没有发生,我也没有犯任何错误。
我非常感谢您的指导。

唯一的问题是您使用路由器时没有定义它……对于您的要求,不需要这样做,并且可以使用以下代码顺利运行


const puppeteer = require('puppeteer');

( async () => { try {
    const browser = await puppeteer.launch();
    const page = await browser.newPage();
    await page.goto("https://example.com");
    await page.screenshot( {path: 'example.png'});    
    await browser.close();
} catch(err) { console.log(err); }
    
})();

你的代码看起来没问题,你检查过你正在保存的屏幕截图了吗?如果你想让浏览器弹出,只需将headless选项设置为false
wait puppeter.launch({headless:false})
@darklightcode。就这样。非常感谢。