es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El Angular Universal (SSR) no puede integrarse con bibliotecas externas como puppeteer, bulljs.

Este documento es solo para describir el problema y compartir mi solución. Me quedé atascado durante mucho tiempo en esto.

Este problema ocurrió después de que actualicé de Angular 10 a 11 y cambié el constructor de “udk:udk-runner” a “@angular-devkit”.

El problema con el que me enfrentaba es cuando configuraba el campo “bundleDependencies” en angular.json como “true”. Puppeteer no puede iniciarse con el error “no se puede iniciar el navegador”.

Luego descubrí que también sucede con otras bibliotecas externas que estoy usando en el lado del servidor, como “BullJS”, “Bull-Board” y “Puppeteer-Cluster”, con el siguiente error:

Fuente de GitHub para demostrar el problema: https://github.com/phattranky/angular-ssr-error-with-pupepteer

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Problema de actualización de Angular 11 con representación en el servidor y Puppeteer

    Después de actualizar a Angular 11 y cambiar el constructor de udk:udk-runner a @angular-devkit, me encontré con un problema en el que Puppeteer no se pudo iniciar y arrojó un error indicando que no puede abrir el navegador. Este problema ocurrió al configurar el campo bundleDependencies en angular.json como true.

    Un examen más detallado reveló que este problema no se limitaba a Puppeteer, ya que otras bibliotecas externas como BullJS, Bull-Board y Puppeteer-Cluster también enfrentaron problemas similares en el lado del servidor.

    Para abordar este problema, creé un repositorio de demostración en Github que muestra el problema, junto con mi solución.

    En general, este fue un problema desafiante de resolver, pero gracias a mi experiencia en AngularJS, Puppeteer, representación en el servidor, angular-universal y Bull, pude encontrar una solución que funcionó para este caso particular.

Comments are closed.