В Node.js, для получения post-параметров в ajax-запросе с использованием Puppeteer, вам потребуется настроить сервер, который будет получать эти параметры.
Вот пример того, как вы можете настроить сервер с использованием Node.js и библиотеки Express.js:
1. Установите необходимые зависимости:
npm install express body-parser
2. Создайте и настройте сервер в файле server.js
:
const express = require('express'); const bodyParser = require('body-parser'); const app = express(); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); app.post('/ajax-handler', (req, res) => { const postData = req.body; console.log('Received post parameters:', postData); // Дальнейшая обработка пост-параметров res.status(200).send('Post parameters received'); }); app.listen(3000, () => { console.log('Server listening on port 3000'); });
3. Теперь, в вашем скрипте Puppeteer, вы можете отправить AJAX-запрос на созданный сервер:
const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto('https://example.com'); const postData = { param1: 'value1', param2: 'value2', }; const response = await page.evaluate((postData) => { return fetch('/ajax-handler', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(postData), }).then(res => res.text()); }, postData); console.log('Server response:', response); await browser.close(); })();
Теперь, когда вы запустите скрипт Puppeteer, он отправит AJAX-запрос на сервер, передавая post-параметры в формате JSON. Сервер получит эти параметры и выведет их в консоль.
Обратите внимание, что вы также можете использовать другую библиотеку для создания сервера, если вам не подходит Express.js. Важно, чтобы сервер обрабатывал post-параметры и отправлял ответ обратно в формате, понятном для вашего скрипта Puppeteer.