J'essaie de déboguer mon application nodejs à l'aide de l'inspecteur de nœud. Mais Google Chrome ne montre pas le code.
J'utilise ce qui suit,
Node.js: v0.10.26
Express: 4.0.0
Inspecteur de nœud: v0.7.3
Google Chrome version: 34.0.1847.131
C'est ce que je fais pour lancer le débogueur.
$ node-inspector
Node Inspector v0.7.3
Visit http://127.0.0.1:8080/debug?port=5858 to start debugging.
Dans une autre console,
$ node --debug app.js
debugger listening on port 5858
$
Ensuite, Google a démarré Chrome) et est allé sur
http://127.0.0.1:8080/debug?port=5858
Il ouvre un inspecteur de nœuds mais sans code .. toutes les fenêtres sont vides.
Remarqué que je ne reçois pas le message "Serveur Express en écoute sur le port 3000"
Tout essayé conformément à nœud-inspecteur ne parvient pas à se connecter au nœud mais pas de chance
Impossible de comprendre ce que je manque. Ce serait génial de votre part d'avoir des suggestions pour pouvoir déboguer mes applications Node.js dans Google Chrome.
Essayez de courir node --debug-brk app.js
au lieu de juste --debug
. Votre application peut ne pas être en pause avant que l'inspecteur de nœud ne soit connecté au processus de nœud. En utilisant --debug-brk
forcera le noeud à se briser sur la première ligne de votre application et attendra qu'un débogueur soit associé au processus. Le chargement de l'interface Web de l'inspecteur de nœuds est la raison pour laquelle l'inspecteur de nœuds se lie au processus de nœud; C'est pourquoi vous incluez le port de débogage du noeud dans la chaîne de requête (localhost: 8080/debug? port = 5858). Vous indiquez à l'inspecteur de nœud quel port il doit atteindre et se connecter.
Voici un gif animé que j'ai assemblé et qui montre l'installation complète et l'exécution de l'inspecteur de nœud.
Dans le gif j'utilise le --debug
flag parce que je ne débogue pas le code qui fonctionne correctement au démarrage. Je débogue dans un gestionnaire de demandes qui ne se déclenche que lorsque la page est demandée. Ainsi, l'actualisation de la page provoque la rupture de l'inspecteur de nœud sur cette ligne.
J'ai également mis sur pied un didacticiel YouTube de 15 minutes il y a quelque temps.
J'espère que ça aide!
node-inspector essaie par défaut de pré-charger tout le code avant de lancer la fenêtre de débogage. J'ai eu des instances, nœud-inspecteur se bloque pour toujours à cause de ce pré-chargement. Heureusement, les nouvelles versions ont une option pour arrêter le préchargement, ce qui accélère le chargement de l'inspecteur.
Essayez node-inspector --no-preload
Le débogage distant standard est entièrement interrompu dans le noeud 6.5. Il est toutefois remplacé par une nouvelle fonctionnalité de noeud interne
$ node --inspect --debug-brk build/server/server.js
Debugger listening on port 9229.
Warning: This is an experimental feature and could change at any time.
To start debugging, open the following URL in Chrome:
chrome-devtools://devtools/remote/serve_file/@62cd277117e6f8ec53e31b1be58290a6f7ab42ef/inspector.html?experiments=true&v8only=true&ws=localhost:9229/node
Debugger attached.
Voir ici - http://arveknudsen.com/?p=346%3Fpage_id%3D346&print=pdf - pour plus d'informations
--debug-brk
est maintenant obsolète
essayez node --inspect-brk <your starting file name>
puis allez à chrome et tapez url chrome://inspect
et cliquez sur Open dedicated DevTools for Node
, le débogueur va démarrer, pas besoin d'inspecteur de nœud
Sur la gauche de Node Inspecteur, onglet "Sources", il y a "une boîte avec un triangle" - la surbrillance dit "Afficher le navigateur". (Voir l'image ci-dessus). Ouvrir que pour trouver les fichiers que vous voulez déboguer et mettre un point d'arrêt sur le code qui n'a pas encore été exécuté.
Notez également que si vous souhaitez déboguer du code qui s'exécute sur le nœud de démarrage, vous devez utiliser la commande --debug-brk
option lors du démarrage. Ensuite, dans Node Inspector, vous devrez lancer l’application (F8
pour tout exécuter). Vous aurez besoin de cette option si vous souhaitez déboguer tout le code d'initialisation, par exemple, le démarrage d'un navigateur Web.
node-debug --no-preload app.js
Ce qui fonctionne pour moi. Accoriding à this :
Mon script est trop rapide pour attacher le débogueur.
Le processus de débogage doit être démarré avec --debug-brk, pour que le script soit suspendu sur la première ligne.
Remarque: node-debug ajoute cette option pour vous par défaut.