Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

250
Vistas
¿Ejecutar comandos mientras un servidor Node.js está activo?

¿Hay alguna manera de ejecutar comandos mientras un servidor Node.js está activo (después de que se haya iniciado) y acceder a todas las funciones/variables/etc.?

Por ejemplo,

después de ejecutar node server.js , ¿hay alguna manera de ejecutar una función o ejecutar comandos en el entorno en vivo a través de la línea de comandos?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Básicamente, parece que está buscando un equivalente de Node.js de la consola del navegador que está disponible para JavaScript alojado en el navegador.

Node.js no proporciona uno directamente (tiene un REPL que puede satisfacer sus necesidades; vea la respuesta de CherryDT ), pero muchos IDE incluyen una "Consola de depuración" (así es como lo llama VS Code) o similar que puede usar cuando ejecutando el código en modo de depuración. Puede inspeccionar variables globales (por supuesto, tiende a no tener muchas variables globales en las aplicaciones de Node.js, que son inherentemente modulares), llamar a funciones globales (lo mismo) y más hasta el punto de interactuar con el alcance actual cuando está en pausa. un punto de quiebre

También puede ejecutar Node.js directamente con un indicador de depuración que le indica que permita que se le adjunte un depurador. Por ejemplo:

 node --inspect-brk server.js

... le dice a Node.js que se ejecute con la depuración habilitada. Verás algo como:

Depurador escuchando en ws://127.0.0.1:9229/89eff679-76ac-4972-9bd9-3142214c0b1f
Para obtener ayuda, consulte: https://nodejs.org/en/docs/inspector

Si abre un navegador basado en Chromium y va a la URL chrome://inspect , verá su objetivo en la lista:

Rastreo de destino (v16.13.2)
índice.js
archivo:///ruta/al/servidor.js
inspeccionar

... donde inspect es un enlace. Haga clic en él y devtools se abrirá, mostrando su código y que la ejecución se detiene en un punto de interrupción automático al comienzo del código. (Puede usar --inspect en lugar de --inspect-brk si no desea comenzar en un punto de interrupción).

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede iniciar un REPL en cualquier momento utilizando el módulo principal de repl . Con useGlobal puede hacer que el alcance global sea compartido, y usando el context puede pasar en cualquier contexto local que necesite:

 import repl from 'repl' const r = repl.start({ useGlobal: true }) r.context.someStuff = 123 // will be accessible as someStuff in REPL

Luego, obtiene el mensaje habitual en su consola y puede interactuar con él para ejecutar comandos y ver variables. Se ejecuta en el mismo proceso que su aplicación, por lo que puede importar/requerir módulos y acceder a sus exportaciones, etc. y sus datos se compartirán con el resto de su código.

Si desea insertar esto en algún punto específico de su código y obtener acceso completo a las variables locales allí, puede usar una función de eval personalizada que llama a la eval de JavaScript en el ámbito local:

 repl.start({ eval: (cmd, context, filename, callback) => { with (context) callback(null, eval(cmd)) } })

(Nota: con esto, definir nuevas variables con let no funcionará en todos los comandos).

Para obtener también el historial en el REPL programático, puede echar un vistazo a repl-story o paquetes similares.

Si desea acceder a una consola similar a través de un navegador web de forma remota (cuidado, riesgo de seguridad, es mejor que esté disponible solo a través del reenvío de puertos SSH), eche un vistazo a node-browser-repl .

Sin embargo, en caso de que esté buscando una experiencia de depuración completa, consulte la respuesta de TJ Crowder sobre cómo adjuntar DevTools a una aplicación node.js.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda