Как вы отлаживаете сервер Node.js, работающий с Chrome/WebKit в качестве удаленного отладчика?
Если у вас работает Node
node --debug server.js
Это дает мне номер порта xxxx, следует ли использовать этот номер порта при запуске Chrome?
Удаленная отладка в нем от Google\ Chrome --remote-debugging-port=xxxx
?
Или это 9222 волшебный порт, как он упоминается повсюду.
Я нахожусь на правильном пути, пытаясь запустить Chrome с --remote-debugger
в Node.js server.js
Ответы
Ответ 1
node -инспектор/-debug теперь заменяется инспектором
См. Обновление ниже
#now deprecated / see below for update
#install node-inspector
npm install -g node-inspector
#start node-inspector, listen on port 8080 (default)
node-inspector --web-port=8080
#in another terminal session/window:
#while node-inspector is running, start your project in debug mode
node --debug myproject.js
Теперь вы можете перейти на http://your_server:8080 для полноценного сеанса отладки myproject.js
Если ваш удаленный сервер недоступен на удаленном порту из-за брандмауэров или по другим причинам, вы можете создать для него ssh-туннель от порта 8080 на вашем локальном компьютере до "localhost: 8080" на удаленном сервере:
ssh -L 8080:localhost:8080 [email protected] -N
и продолжайте работать, пока вы используете http://localhost:8080 на своем локальном компьютере для отладки вашей удаленной сессии nodejs
Обновить август 2017
Запустите node в режиме проверки:
node --inspect=0.0.0.0:9229 myproject.js
или если вы хотите, чтобы отладчик разбился в первой строке myproject.js:
node --inspect-brk=0.0.0.0:9229 myproject.js
Затем откройте следующий URL-адрес в браузере Chrome:
chrome://inspect
Нажмите кнопку "Настроить..." и добавьте следующую цель:
ip-or-name-of-server-running-node:9229
После нажатия кнопки "Готово" вы должны увидеть myproject.js под вашими удаленными объектами. Нажмите ссылку проверки, чтобы начать отладку. К сожалению, ссылка проверки не работает на Chrome 58 для Ubuntu. Он отлично работает на Chrome 60 для Windows.
Ответ 2
Используйте node-inspector
, чтобы удаленно отлаживать ваше приложение node из Chrome, которое вы начали с параметра --debug
показанный.
Ответ 3
Последние версии Node ( > v6.3.0) и Chrome теперь позволяют использовать инструменты разработчика Chrome для отладить Node.JS процесс без необходимости устанавливать что-либо еще. Просто перейдите --inspect
в node
:
$ node --inspect script.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://SOME-URL-HERE
Просто откройте этот URL в Chrome, и вам будет хорошо.
Если вам нужно приостановить ваш script сразу после запуска Node, вы также можете передать --debug-brk
в ту же команду.
Ответ 4
-
используя
$ vagrant ssh - -L 5858: 127.0.0.1: 5858
to ssh connect to VM. also this comment would start a proxy server on port 5858;
-
вы можете протестировать с помощью telnet 127.0.0.1 5858, чтобы узнать, запущен ли локальный прокси-сервер или нет.
-
В VM вы можете запустить node с помощью команды
-
$node --debug-brk app.js
- настроить настройку отладки в веб-буре.
- при запуске отладки в веб-буфере, сервер node.js в VM запустится через несколько секунд.
PS: нет необходимости касаться бродячего файла.
Ссылка: Подключение WebStorm к удаленному сеансу отладки node.js.