Estoy tratando de pasar una variable que estoy usando en mi código a la función page.evaluate, pero es console.logging ya que no está definida y crea errores para mi código.
const putterID = puttersObjectArray[putterPriorityIndexFound].id; console.log(putterID) // 7729 await page.evaluate(async () => { console.log(putterID) await fetch(`https://www.examplestore.com/store/product/addtocartplp/?productId=${putterID}&X-Requested-With=XMLHttpRequest&_=1647970037149`, { "headers": { "accept": "*/*", "accept-language": "en-US,en;q=0.9", "sec-ch-ua": "\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"99\", \"Google Chrome\";v=\"99\"", "sec-ch-ua-mobile": "?0", "sec-ch-ua-platform": "\"macOS\"", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", "x-newrelic-id": "VQABWFZUCBAEXFRRAQkCVVc=", "x-requested-with": "XMLHttpRequest" }, "referrer": "https://www.examplestore.com/store/products/", "referrerPolicy": "no-referrer-when-downgrade", "body": null, "method": "GET", "mode": "cors", "credentials": "include" }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.log(error)); }); Recibo el siguiente error: (node:3210) UnhandledPromiseRejectionWarning: Error: Evaluation failed: ReferenceError: putterID is not defined
¿Puedes intentarlo con esto? Aquí, primero verifiqué putterId y luego ejecutaré el código asíncrono.
const putterID = puttersObjectArray[putterPriorityIndexFound].id; putterID && page.evaluate(async () => { console.log(putterID) await fetch(`https://www.examplestore.com/store/product/addtocartplp/?productId=${putterID}&X-Requested-With=XMLHttpRequest&_=1647970037149`, { "headers": { "accept": "*/*", "accept-language": "en-US,en;q=0.9", "sec-ch-ua": "\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"99\", \"Google Chrome\";v=\"99\"", "sec-ch-ua-mobile": "?0", "sec-ch-ua-platform": "\"macOS\"", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", "x-newrelic-id": "VQABWFZUCBAEXFRRAQkCVVc=", "x-requested-with": "XMLHttpRequest" }, "referrer": "https://www.examplestore.com/store/products/", "referrerPolicy": "no-referrer-when-downgrade", "body": null, "method": "GET", "mode": "cors", "credentials": "include" }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.log(error)); });Actualización: necesito pasar putterID de esta manera:
const putterID = puttersObjectArray[putterPriorityIndexFound].id; console.log(putterID) // 7729 await page.evaluate(async () => { console.log(putterID) await fetch(`https://www.examplestore.com/store/product/addtocartplp/?productId=${putterID}&X-Requested-With=XMLHttpRequest&_=1647970037149`, { "headers": { "accept": "*/*", "accept-language": "en-US,en;q=0.9", "sec-ch-ua": "\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"99\", \"Google Chrome\";v=\"99\"", "sec-ch-ua-mobile": "?0", "sec-ch-ua-platform": "\"macOS\"", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", "x-newrelic-id": "VQABWFZUCBAEXFRRAQkCVVc=", "x-requested-with": "XMLHttpRequest" }, "referrer": "https://www.examplestore.com/store/products/", "referrerPolicy": "no-referrer-when-downgrade", "body": null, "method": "GET", "mode": "cors", "credentials": "include" }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.log(error)); }, putterID);const putterID = puttersObjectArray[putterPriorityIndexFound].id; consola.log(putterID) // 7729
await page.evaluate(async (putterID) => { console.log(putterID) await fetch(`https://www.examplestore.com/store/product/addtocartplp/?productId=${putterID}&X-Requested-With=XMLHttpRequest&_=1647970037149`, { "headers": { "accept": "*/*", "accept-language": "en-US,en;q=0.9", "sec-ch-ua": "\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"99\", \"Google Chrome\";v=\"99\"", "sec-ch-ua-mobile": "?0", "sec-ch-ua-platform": "\"macOS\"", "sec-fetch-dest": "empty", "sec-fetch-mode": "cors", "sec-fetch-site": "same-origin", "x-newrelic-id": "VQABWFZUCBAEXFRRAQkCVVc=", "x-requested-with": "XMLHttpRequest" }, "referrer": "https://www.examplestore.com/store/products/", "referrerPolicy": "no-referrer-when-downgrade", "body": null, "method": "GET", "mode": "cors", "credentials": "include" }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.log(error)); });