Pamiętając o tym, że mam tylko najdokładniejsze zrozumienie tego, co debugger jest naprawdę, potrzebuję pomocy przy konfigurowaniu konfiguracji debugowania npm WebStorm dla aplikacji express.js
."Odmowa połączenia" w konfiguracji debugowania WebStorm NPM
Oto ja tak far-- klikam debug z moich ustawień, jak myślę, że powinny one być (poniżej):
/Users/me/.nvm/versions/node/v4.4.1/bin/node --debug=8090
/Users/me/.nvm/versions/node/v4.4.1/lib/node_modules/npm/bin/npm-cli.js run-script start
To debug "start" script, make sure $NODE_DEBUG_OPTION string is specified as the first argument for node command you'd like to debug.
For example:
{ "start": "node $NODE_DEBUG_OPTION server.js" }
Debugger listening on port 8090
...
It has begun. Port: 3000
Więc w tym momencie, program rozpoczął się i reaguje na moje POST
do localhost:3000
, ale nie łamie ustawionego punktu przerwania.
Patrząc w Debugger> Zmienne okienka, widzę Connecting to localhost:57617
, to etykietka wyskakuje mówiąc: „Connection refused” i szyba mówi Frame is not available
.
Nie rozumiem, skąd pochodzi ten numer portu 57617. Różni się, ale nie według żadnego wzoru, który dotąd odkryłem, z wyjątkiem tego, że zawsze jest inny niż ten ustawiony w opcji węzła --debug=X
lub --debug-brk=X
.
57617 jest losowym portem, w którym nasłuchuje debugger węzła. To naprawdę nie ma znaczenia. Czy dodałeś $ NODE_DEBUG_OPTION do polecenia node w twoim package.json, jak jest napisane w wiadomości? Nie można debugować skryptów npm, chyba że ta zmienna istnieje - konieczne jest uruchomienie węzła spawnowanego przez npm w trybie debugowania – lena
To wszystko. (Byłem, przyznaję, myliłem się z tym, ponieważ jakoś wyobrażałem sobie, że nie jest to literalna wartość ciągu, ale niektóre zmienne env lub niektóre takie). Jeśli odpowiesz na poniższe pytanie, przyjmuję twoją odpowiedź. – Ben