真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

node.js中如何進行調(diào)試

這篇文章主要介紹node.js中如何進行調(diào)試,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、微信小程序定制開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了涪陵免費建站歡迎大家使用!

用了幾天node.js感覺很新奇,但是調(diào)試問題實在是愁煞人,開始的時候懶的學習調(diào)試方法,看看異常內(nèi)容就可以了,但隨著代碼復雜程度的上升,并不是所有錯誤都是語法錯誤了,不調(diào)試搞不定了,只好搜搜資料,學習了一下怎么調(diào)試。

不用每次都重啟服務的supervisor

使用過PHP的同學肯定都清楚,修改了某個腳本文件后,只要刷新頁面服務器就會加載新的內(nèi)容,但是node.js在第一次引用到某個文件解析后會將其放入內(nèi)存,下次訪問的時候直接在內(nèi)存中獲取,以提高效率,但是這對我們開發(fā)造成一定困擾,修改了某個module后只能重啟服務器后才能生效,調(diào)試起來效率還是很低的。

于是乎node.js中有了supervisor插件幫我們堅實文件改動,自動重啟服務器,supervisor是node.js的一個包,安裝起來很簡單,使用npm的安裝命令就可以,因為我們需要在控制臺運行,所以需要安裝在全局環(huán)境中

npm install -g supervisor

這樣我們就可以使用supervisor啟動腳本了

supervisor index

node.js中如何進行調(diào)試

當我們對文件做了改動的時候,可以看到控制臺多了三行,服務器已經(jīng)重啟了

node.js中如何進行調(diào)試

原生控制臺調(diào)試

node.js本身支持調(diào)試,在語句前面加debugger指令就可以添加一個斷點

var server=require('./server'),
    router=require('./router'),
    requestHandlers=require('./requestHandlers');debugger;var handle={};debugger;
handle['/']=handle['/start']=requestHandlers.start;debugger;
handle['/upload']=requestHandlers.upload;
handle['/show']=requestHandlers.show;debugger;
server.start(8080,router.route,handle);

在啟動服務的時候添加debug 選項

node debug index.js

node.js中如何進行調(diào)試

這時候輸入一些指令就可以單步調(diào)試、到斷點監(jiān)視局部變量等,看個命令圖,很多命令都有其縮寫形式

node.js調(diào)試命令
命令功能
run

執(zhí)行腳本,在第一行暫停

restart

重新執(zhí)行腳本

cont, c

繼續(xù)執(zhí)行,直到遇到下一個斷點

next, n

單步執(zhí)行

step, s

單步執(zhí)行并進入函數(shù)

out, o

從函數(shù)中步出

setBreakpoint(), sb()

當前行設置斷點

setBreakpoint(‘f()’), sb(...)

在函數(shù)f的第一行設置斷點

setBreakpoint(‘script.js’, 20), sb(...)

在 script.js 的第20行設置斷點

clearBreakpoint, cb(...)

清除所有斷點

backtrace, bt

顯示當前的調(diào)用棧

list(5)

顯示當前執(zhí)行到的前后5行代碼

watch(expr)

把表達式 expr 加入監(jiān)視列表

unwatch(expr)

把表達式 expr 從監(jiān)視列表移除

watchers

顯示監(jiān)視列表中所有的表達式和值

repl

在當前上下文打開即時求值環(huán)境

kill

終止當前執(zhí)行的腳本

scripts

顯示當前已加載的所有腳本

version

顯示v8版本

詳細使用有興趣同學可以自己摸索,我是沒興趣。。。太復雜了,看幾個貼心的

使用Eclipse調(diào)試

是的,Eclipse又威武了,連node.js也能調(diào)試,在Eclipe官網(wǎng)上下載eclipse,然后 Help->Install New Software->Add

在彈出的窗口添加一個源,名字好記就行,地址是http://chromedevtools.googlecode.com/svn/update/dev/

node.js中如何進行調(diào)試

等一會兒后彈出選擇界面,選中第一個

node.js中如何進行調(diào)試

一路next到最后finish,下載完成后會提醒重啟Eclipse,完成之后就可以調(diào)試node.js了,打開想調(diào)試的文件,切換Eclipse到調(diào)試視圖,點擊工具欄右邊的小三角,選擇Debug Configuration

node.js中如何進行調(diào)試

雙擊 Standard V8 VM 選項創(chuàng)建一個新的配置,填好相應參數(shù)

node.js中如何進行調(diào)試

通過 --debug-brk選項在控制臺啟動node服務器

node --debug-brk=5858 test.js

點擊Eclipse剛才界面的debug按鈕,就可以像調(diào)試Java一樣調(diào)試node.js了

node.js中如何進行調(diào)試

使用node-inspector調(diào)試

大部分node.js應用都是web應用,所以一些基于Chrome的在線調(diào)試工具應運而生,最出名的應該就是node-inspector了,這是一個node.js的模塊,安裝、使用相當?shù)姆奖悖紫仁褂胣pm把其安裝在全局環(huán)境中

npm install -g node-inspector

node-inspector是通過websocket方式來轉(zhuǎn)向debug輸入輸出的。因此,我們在調(diào)試前要先啟動node-inspector來監(jiān)聽node.js的debug調(diào)試端口。默認情況下node-inspector的端口是8080,可以通過參數(shù)--web-port=[port]來設置端口。

node.js中如何進行調(diào)試

在啟動node-inpspector之后,我們可以通過--debug或--debug-brk來啟動node.js程序。

node.js中如何進行調(diào)試

這時候就可以訪問http://127.0.0.1:8888/debug?port=5858 使用瀏覽器調(diào)試了,看看界面,不用多說什么了吧

node.js中如何進行調(diào)試

以上是node.js中如何進行調(diào)試的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


當前名稱:node.js中如何進行調(diào)試
本文路徑:http://weahome.cn/article/gssecc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部