久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

如何開啟nodejs調試?如何調試nodejs程序?

如何調試nodejs程序?下面本篇文章給大家介紹一下nodejs調試debug的方法,希望對大家有所幫助!

如何開啟nodejs調試?如何調試nodejs程序?

對于開發者來說,在開發應用程序的過程中,往往為了開發方便和解決bug需要借助于編程語言的調試功能。一般來說我們需要借助于強大IDE的調試功能來完成這項工作。nodejs也不例外。

今天我們來詳細介紹一下如何調試node程序。

開啟nodejs的調試

還記得之前我們講到的koa程序嗎?本文將會以一個簡單的koa服務端程序為例,來展開nodejs的調試。

先看下一個簡單的koa服務app.js:

const Koa = require('koa'); const app = module.exports = new Koa();  app.use(async function(ctx) {   ctx.body = 'Hello World'; });  if (!module.parent) app.listen(3000);

上面的程序開啟了3000端口,建立了一個http服務。每次請求的時候,都會返回hello World,非常的簡單。

要想運行上面的程序,我們需要執行node app.js。 這會執行app.js但是并不會開啟調試功能。

怎么進行調試呢?

我們需要加上 –inspect 參數:

node --inspect app.js

上面的代碼將會開啟nodejs的調試功能。

我們看下輸出結果:

Debugger listening on ws://127.0.0.1:9229/88c23ae3-9081-41cd-98b0-d0f7ebceab5a For help, see: https://nodejs.org/en/docs/inspector

結果告訴了我們兩件事情,第一件事情就是debugger監聽的端口。默認情況下將會開啟127.0.0.1的9229端口。并且分配了一個唯一的UUID以供區分。

第二件事情就是告訴我們nodejs使用的調試器是Inspector。

Inspector是nodejs 8之后引入的,如果是在nodejs 7之前,那么使用的是legacy debugger。

調試的安全性

如果debugger連接到了nodejs運行環境中,如果有惡意攻擊者的話,這個惡意攻擊者可以在nodejs環境中運行任意代碼。這會給我們的程序帶來很大的安全隱患。

所以我們一定要注意調試的安全性。一般來說,我們不建議進行遠程調試。

默認情況下 –inspect 綁定的是127.0.0.1,這樣就只允許本地程序訪問。并且任何本地運行的程序都有權限進行該程序的調試。

如果我們真的想將debug程序暴露給外部程序的話,那么可以指明本機的外網IP地址或者0.0.0.0(表示任何地址,無限制),這樣遠程機子就可以進行遠程調試了。

如果我們想進行安全的remote debug該怎么處理呢?

首先,我們要開啟本地的debug:

node --inspect app.js

然后我們可以搭建一個ssh隧道,將本地的9221端口映射到遠程服務器的9229端口:

ssh -L 9221:localhost:9229 user@remote.example.com

這樣我們就可以通過連接本地的9221端口,進行遠程調試了。

使用WebStorm進行nodejs調試

JetBrains出品的WebStorm可謂是開發nodejs的利器,WebStorm自帶有debug選項,如果開啟該選項,則會在后臺開啟 –inspect:

如何開啟nodejs調試?如何調試nodejs程序?

使用WebStorm來進行調試和使用IDEA來進行java程序調試類似,這里就不多介紹了。

使用Chrome devTools進行調試

使用Chrome devTools進行調試的前提是我們已經開啟了 –inspect模式。

在chrome中輸入chrome://inspect:

如何開啟nodejs調試?如何調試nodejs程序?

我們可看到chrome inspect的界面,如果你本地已經有開啟inspect的nodejs程序的話,在Remote Target中就可以直接看到。

選中你要調試的target,點擊inspect,即可開啟Chrome devTools調試工具:

如何開啟nodejs調試?如何調試nodejs程序?

你可以對程序進行profile,也可以進行調試。

這里我們關注的是調試,所以轉到source一欄,添加你要調試的程序的源代碼:

如何開啟nodejs調試?如何調試nodejs程序?

加入斷點即可開始調試了。和在chrome中調試web端的js是一樣的。

使用node-inspect來進行調試

其實nodejs有一個自帶的調試工具,叫做node-inspect,這是一個cli的調試工具。我們看一下怎么使用。

我們直接使用:

node inspect app.js  < Debugger listening on ws://127.0.0.1:9229/f1c64736-47a1-42c9-9e9e-f2665073d3eb < For help, see: https://nodejs.org/en/docs/inspector < Debugger attached. Break on start in app.js:1 > 1 const Koa = require('koa');   2 const app = module.exports = new Koa();   3  debug>

node inspect 做了兩件事情,第一件事情就是生成子程序去運行node –inspect app.js,第二件事情就是在主程序中運行CLI調試窗口。

這個CLI調試程序為我們提供了一些非常有用的命令:

1、Stepping

  • cont, c: 繼續執行
  • next, n: Step到下一步
  • step, s: Step in
  • out, o: Step out
  • pause: 暫停運行的代碼

2、Breakpoints

  • setBreakpoint(), sb(): 在當前行設置斷點
  • setBreakpoint(line), sb(line): 在指定的行設置斷點
  • setBreakpoint(‘fn()’), sb(…): 在指定的function中設置斷點
  • setBreakpoint(‘script.js’, 1), sb(…): 在指定的腳本文件中設置斷點
  • clearBreakpoint(‘script.js’, 1), cb(…): 從文件中清除斷點

3、Information

  • backtrace, bt: 打印當前execution frame的backtrace信息
  • list(5): 列出源代碼前后的5行
  • watch(expr): 添加監聽表達式
  • unwatch(expr): 刪除監聽表達式
  • watchers: 列出所有的watchers
  • repl: 打開repl表達式
  • exec expr: 執行表達式

通過上面的命令,我們可以在CLI中進行比較復雜的調試活動。

其他的debug客戶端

除了上面我們講到的幾個之外,我們還可以使用vscode,Visual Studio ,Eclipse IDE 等來進行nodejs的調試,這里就不一一詳細介紹了。

感興趣的朋友可以自行探索。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
国产成人1区| 激情婷婷综合| 国产一区二区久久久久| 国产精品久久久亚洲一区| 欧美日韩xxxx| 国产精品入口久久| 国产亚洲久久| 日本不卡视频一二三区| 欧美日韩亚洲一区三区| 日韩精品一区二区三区中文字幕| 亚洲综合欧美| 亚洲激情国产| 亚洲日本免费电影| 日韩福利视频导航| 国产精品成久久久久| 麻豆成人91精品二区三区| 久久av影院| 欧美sss在线视频| 亚洲成人精品| 免费精品视频在线| 精品国产乱码久久久| 婷婷丁香综合| 国产精品久久久久久久久免费高清 | 精品三级在线| 久久精品国产福利| 久久精品中文| 久久亚洲二区| 在线看片国产福利你懂的| 亚洲精品网址| 美腿丝袜在线亚洲一区| 久久久久国产| 欧美国产日韩电影| 久久国产精品99国产| 人人精品久久| 精品国产亚洲一区二区三区在线| 日韩在线一区二区| 日韩一区三区| 国内精品美女在线观看| 亚洲一级淫片| 中文字幕一区二区三区四区久久| 亚洲免费资源| 蜜臀久久精品| 激情不卡一区二区三区视频在线| 免费视频最近日韩| 久久精品二区亚洲w码| 日本欧美在线看| 久久国产亚洲| 首页国产精品| 久久不射中文字幕| 日韩不卡一区| 久久精品天堂| 久久av日韩| 日本午夜精品久久久| 欧美日韩国产欧| 久久狠狠婷婷| 香蕉成人av| 日产午夜精品一线二线三线| 国产精品传媒麻豆hd| 久久激情av| 伊人久久亚洲美女图片| 麻豆精品视频在线| 国产精品亚洲产品| 最新国产精品视频| 电影亚洲精品噜噜在线观看| 久久69成人| 国产精品1区| 国产精品久久久久久av公交车| 四虎成人精品一区二区免费网站| 亚洲欧洲美洲国产香蕉| 亚洲尤物av| 日本综合精品一区| 亚洲精品在线a| 久久国产精品色av免费看| 亚洲精品成a人ⅴ香蕉片| 日本午夜精品一区二区三区电影| 日韩和欧美一区二区三区| 国产精品一级| 99国产精品一区二区| 国产精品毛片aⅴ一区二区三区| 日本天堂一区| av免费不卡国产观看| 欧美freesex黑人又粗又大| 久久一区亚洲| 香蕉视频亚洲一级| 亚洲综合另类| 久久精品99国产国产精| 国产一二在线播放| 欧美一区二区性| 日韩视频1区| 久久av网址| 欧美午夜精彩| 国产高清视频一区二区| 久久精品国产大片免费观看| 一二三区精品| 首页国产精品| 日韩欧美精品一区二区综合视频| 免费在线欧美黄色| 成人在线视频免费| 久久精品国产68国产精品亚洲| 国产专区一区| 日韩久久一区| 福利精品在线| 视频一区中文字幕精品| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 免费看黄色91| 欧美在线日韩| 亚洲国内精品| 久久成人福利| 日韩在线网址| 国产美女精品| 日韩免费久久| 日韩欧美网址| 日韩欧美2区| 亚洲一区二区三区高清| 亚洲综合电影| 日韩国产一二三区| 尹人成人综合网| 欧洲激情综合| 欧美肉体xxxx裸体137大胆| 国产日韩欧美三区| 色综合视频一区二区三区日韩| 亚洲成人不卡| 福利一区二区| 麻豆中文一区二区| 日本vs亚洲vs韩国一区三区二区| 在线综合视频| 99在线观看免费视频精品观看| 精品一区二区三区免费看| 国产精品网址| 日韩欧乱色一区二区三区在线| 久久精品三级| 日韩毛片视频| 激情婷婷久久| 国产精品久久777777毛茸茸| 日本少妇一区| 精品一区欧美| 免费人成精品欧美精品| 亚洲一卡久久| 免费在线成人网| 蜜臀国产一区二区三区在线播放| 香蕉久久国产| 综合欧美精品| 国产精品尤物| 国产欧美精品| 欧美1区二区| 国产精品大片| 久久精品资源| 国产99久久| 亚洲啊v在线免费视频| 国产经典一区| 日本精品黄色| 午夜国产一区二区| 综合色一区二区| 国产精品最新| 久久五月天小说| 免费在线观看视频一区| 欧美日韩一区二区三区不卡视频| 久久精品人人| 亚洲免费一区二区| 国产精品免费大片| 福利一区二区三区视频在线观看| 国产一区二区精品久| 鲁大师成人一区二区三区| 欧美91在线| 国产在线成人| 天堂va在线高清一区| 日韩欧美字幕| 国产剧情一区| 亚洲午夜av| 日韩动漫一区| 激情91久久| 老司机精品在线| 久久99伊人| 精品国产午夜| 青青国产91久久久久久| 黑人精品一区| 日韩一区二区三区精品视频第3页| 国产精品v一区二区三区| 国产尤物精品| 国产成人77亚洲精品www| 日韩不卡一区二区| 在线视频免费在线观看一区二区| 精品久久在线| 国产黄色精品| 亚洲aⅴ网站| 国产精品试看| 久久一区二区三区喷水| 国产精品一线| 一级欧美视频| 丝袜亚洲另类欧美| 欧美香蕉视频| 免费亚洲婷婷| 国产精品调教视频| 国产精品任我爽爆在线播放| 日本不卡一区二区三区| 中日韩男男gay无套| 欧美大黑bbbbbbbbb在线| 国产欧美一区二区三区精品酒店| 国产视频一区二| 国产精品午夜一区二区三区|