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

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

node.js中如何進行調(diào)試-創(chuàng)新互聯(lián)

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

站在用戶的角度思考問題,與客戶深入溝通,找到光澤網(wǎng)站設(shè)計與光澤網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名與空間、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋光澤地區(qū)。

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

不用每次都重啟服務(wù)的supervisor

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

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

npm install -g supervisor

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

supervisor index

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

當我們對文件做了改動的時候,可以看到控制臺多了三行,服務(wù)器已經(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);

在啟動服務(wù)的時候添加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()

當前行設(shè)置斷點

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


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

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


在 script.js 的第20行設(shè)置斷點

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版本

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

使用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)建一個新的配置,填好相應(yīng)參數(shù)

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

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

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應(yīng)用都是web應(yīng)用,所以一些基于Chrome的在線調(diào)試工具應(yīng)運而生,最出名的應(yīng)該就是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]來設(shè)置端口。

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)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


分享標題:node.js中如何進行調(diào)試-創(chuàng)新互聯(lián)
當前路徑:http://weahome.cn/article/gposd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部