最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js調試技術總結分享

 更新時間:2017年03月12日 16:27:18   作者:moonz-wu  
Node.js是一個可以快速構建網(wǎng)絡服務及應用的平臺。該平臺的構建是基于Chrome's JavaScript runtime,也就是說,實際上它是對Google V8引擎(應用于Google Chrome瀏覽器)進行了封裝。 今天介紹Node.js調式目前有幾種技術,需要的朋友可以參考下。

前言

眾所周知調試技術與開發(fā)技術構成了軟件開發(fā)的基石。目前Nodejs作為新型的Web Server開發(fā)棧倍受開發(fā)者關注??偟膩碚fNodejs的應用程序主要有兩部分:JavaScript編寫的js模塊和C語言編譯的二進制模塊。

這里主要介紹三種avaScript模塊的調試方法:基于Nodejs內建的調試器,基于V8調試插件和基于Chrome瀏覽器的調試器。

以下所有的操作都將基于如下代碼(example.js):

var http = require('http');
var url = require('url');
http.createServer(function (req, res) {
 var path = url.parse(req.url).pathname;
 res.writeHead(200, {'Content-Type': 'text/plain'});
 res.end(path);
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/');

一. 基于Nodejs內建的調試器

Nodejs提供了一個內建調試器來幫助開發(fā)者調試應用程序。想要開啟調試器我們需要在代碼中加入debugger標簽,當Nodejs執(zhí)行到debugger標簽時會自動暫停(debugger標簽相當于在代碼中開啟一個斷點)。代碼如下:

var path = url.parse(req.url).pathname;
debugger;
res.writeHead(200, {'Content-Type': 'text/plain'});

執(zhí)行命令:node debug example.js 就可以進入調試模式。

在debug模式下,可以使用內建命令如repl去評估變量和表達式的值(如2所示)。我們也可以通過help命令來獲取完整的調試命令列表。

Commands: run (r), cont (c), next (n), step (s), out (o), backtrace (bt), setBreakpoint (sb), clearBreakpoint (cb),
watch, unwatch, watchers, repl, restart, kill, list, scripts, breakpoints, version

二. 基于V8插件的調試器

Nodejs是基于google V8的引擎上構建的,Google為Eclipse提供了一個對應的調試插件。關于如何在Eclipse中安裝和調試Nodejs程序就不再重復描述了,網(wǎng)上已經(jīng)有很多的文章了,唯一要注意的是在默認情況下V8引擎支持的調試模式是本地模式。如果想要開啟遠程調試的話,我們需要修改Nodejs中的V8源文件: /deps/v8/src/platform-posix.cc

 addr.sin_family = AF_INET;
 addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK); --> INADDR_ANY
 addr.sin_port = htons(port);

然后重新編譯Nodejs。

提示:

用插件來調試nodejs程序,你有時候會遇到什么connect refuse, get version failed等等錯誤。那么請注意你使用的ip的地址, 一般下127.0.0.1的回環(huán)地址是都工作的。如果你使用真實的ip地址,請檢查防火墻設置。

三. 基于Chrome瀏覽器的調試器

既然我們可以通過V8的調試插件來調試,那是否也可以借用Chrome瀏覽器的JavaScript調試器來調試呢?node-inspector模塊提供了這樣一種可能。我們需要先通過npm來安裝node-inspector

npm install -g node-inspector // -g 導入安裝路徑到環(huán)境變量

node-inspector是通過websocket方式來轉向debug輸入輸出的。因此,我們在調試前要先啟動node-inspector來監(jiān)聽Nodejs的debug調試端口。

默認情況下node-inspector的端口是8080,可以通過參數(shù)--web-port=[port]來設置端口。在啟動node-inpspector之后,我們可以通過--debug或--debug-brk來啟動nodejs程序。通過在瀏覽器輸入http://[ip address]:8080/debug?port=5858,我們會得到如下的調試窗口:

這三種方法各自有優(yōu)缺點,我個人比較欣賞node-inspector的方式。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • node.js中的http.response.removeHeader方法使用說明

    node.js中的http.response.removeHeader方法使用說明

    這篇文章主要介紹了node.js中的http.response.removeHeader方法使用說明,本文介紹了http.response.removeHeader的方法說明、語法、接收參數(shù)、使用實例和實現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • windows利用nvm管理node.js2025最新版

    windows利用nvm管理node.js2025最新版

    本文主要介紹了在Windows系統(tǒng)上使用nvm管理Node.js版本的過程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-03-03
  • Node.js中處理錯誤的4種最佳方法分享

    Node.js中處理錯誤的4種最佳方法分享

    錯誤處理并不是編碼工作中最吸引人的部分,但在?Node.js?中構建可靠、生產(chǎn)級別的應用程序時,它是絕對必要的,下面小編就來為大家介紹一下Node.js中處理錯誤的4種最佳方法吧
    2025-02-02
  • 簡單了解node npm cnpm的具體使用方法

    簡單了解node npm cnpm的具體使用方法

    這篇文章主要介紹了簡單了解node npm cnpm的具體使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-02-02
  • nodejs創(chuàng)建簡易web服務器與文件讀寫的實例

    nodejs創(chuàng)建簡易web服務器與文件讀寫的實例

    下面小編就為大家?guī)硪黄猲ode js系列課程-創(chuàng)建簡易web服務器與文件讀寫的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • npm安裝慢的問題分析及解決方法

    npm安裝慢的問題分析及解決方法

    在Node.js開發(fā)過程中,npm install 是安裝和管理項目依賴的關鍵命令,然而,有時我們會遇到 npm install 運行卡住不動的情況,所以本文給大家介紹了npm安裝慢的問題分析及解決方法,需要的朋友可以參考下
    2025-03-03
  • node.js 發(fā)布訂閱模式的實例

    node.js 發(fā)布訂閱模式的實例

    下面小編就為大家?guī)硪黄猲ode.js 發(fā)布訂閱模式的實例。小編覺得挺不錯的,現(xiàn)在就想給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • yarn?install命令報錯warning?package-lock.json?found解決辦法

    yarn?install命令報錯warning?package-lock.json?found解決辦法

    這篇文章主要給大家介紹了關于yarn?install命令報錯warning?package-lock.json?found的解決辦法,文中通過圖文將解決的辦法介紹的非常詳細,還分享了更多yarn install遇到的報錯及解決方案,需要的朋友可以參考下
    2024-02-02
  • 在Node.js中實現(xiàn)視頻收藏功能

    在Node.js中實現(xiàn)視頻收藏功能

    在構建視頻分享平臺時,視頻的收藏功能是用戶互動的重要組成部分,本文將介紹如何在Node.js應用中實現(xiàn)視頻收藏功能,包括數(shù)據(jù)模型的創(chuàng)建、業(yè)務邏輯的實現(xiàn)以及接口的驗證測試,需要的朋友可以參考下
    2024-04-04
  • 基于nodejs+express4.X實現(xiàn)文件下載的實例代碼

    基于nodejs+express4.X實現(xiàn)文件下載的實例代碼

    本篇文章主要介紹了詳解nodejs+express4.X的文件下載的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07

最新評論

禄丰县| 千阳县| 论坛| 英吉沙县| 岫岩| 浪卡子县| 宣恩县| 永嘉县| 宜都市| 吴桥县| 敖汉旗| 宣化县| 融水| 屯留县| 兴和县| 环江| 中江县| 恩施市| 保德县| 安塞县| 永善县| 台安县| 积石山| 邢台县| 永春县| 碌曲县| 威信县| 玉环县| 甘孜县| 木里| 明水县| 沙田区| 津市市| 苏尼特左旗| 乐清市| 蕉岭县| 延吉市| 洮南市| 铜陵市| 昌乐县| 海宁市|