Подтвердить что ты не робот

Как отлаживать приложение node.js с Visual Studio 2013 и Node Инструменты NTVS

Я переместил существующий проект node.js + express в VS, потому что теперь я предпочитаю IDE поверх JetBrains (использовал VS в течение многих лет, только просматривал Webstorm).

Я использовал новый проект NTVS- > из существующих источников и все файлы были успешно импортированы.

Затем я открыл настройки проекта для моего проекта и установил аргументы node.exe в bin\www, файл автозагрузки для экспресс-доставки.

Когда я нажимаю F5 (debug), я получаю сообщения console.log, которые я ввел в файлы www и app.js в командной строке открытия, и похоже, что сервер работает (не могу подтвердить, я хотите отлаживать, если все работает), но отладчик VS сразу выходит из него, он также не открывает какую-либо страницу в браузере, который я выбрал для отладки.

My node приложение фактически является веб-сервисом REST, поэтому я хочу протестировать разные URL-адреса с разными параметрами.

Кроме того, я не могу получить доступ к приложению в указанном порту, хотя, когда я непосредственно запускаю его из node.exe, я могу, даже несмотря на то, что приглашение по-прежнему открыто.

(У меня установлены NTVS и WebEssentials - некоторые операции занимают много времени, но я отношу это к тому, что NTVS остается ранней версией.)

Вопрос: Как отладчик Visual Studio остается подключенным к приложению node.js, поэтому я могу использовать точки останова и использовать любой браузер для подключения и тестирования разных URL-адресов? (Даже точка останова на консоли .log, который печатается во время запуска, не запускается.)

4b9b3361

Ответ 1

Для всех, кто просит получить, и тот, кто ищет находит....

(и да, я потратил много времени на поиск и попытку перед публикацией здесь.)

Settings

Вид приятный для отладки node.js-сервера с VS..

надеюсь, что это поможет кому-то

Изменить: аргументы node.exe могут быть трудночитаемыми на изображении. Это должно быть

 --debug=<portno>

который состоит из двух тире (а не только одного), чтобы указать порт отладки.

Ответ 2

Не так много знаний в expressjs, но с недавним выпуском NTVS 1.0 Alpha, я нашел, что он поддерживает удаленную отладку, которая также может использоваться для отладки приложения nodejs, запущенного локально, - в любом случае не пробовали, если он работает с nodejs app + expressjs, но он должен.

Я выполнил шаг в этом видео https://youtu.be/-ir9ZB8lUg4, который

  • Запустите nodejs с помощью node.exe RemoteDebug.js <your_javascript_file>.
    RemoteDebug.js появился при установке NTVS.
  • В Visual Studio выберите Debug > Attach to Process
  • Выберите Node.js remote debugging для транспорта
  • Введите localhost:5859 для квалификатора
  • Нажмите Attach

Это приведет к тому, что Visual Studio будет работать в режиме отладки, который вы можете установить для точки останова, сделать шаг за шагом/выходить из игры, очень похожий опыт, когда вы используете VS для отладки .NET-приложения.

Ответ 3

Его довольно прямолинейно с NTVS, вы можете загрузить нужную версию для своих окон из github здесь

После установки NTVS будут добавлены шаблоны проектов NodeJS

Теперь, выберите Файл- > Новый проект → Основное приложение NodeJS Express 3 (оно будет доступно в шаблонах проектов javascript)

Теперь просто отлаживаем и выбираем Начать отладку, добавляем точки останова, когда это требуется, и вы можете начать отладку