nodejs调试慢(nodejs怎么调试)

本文目录一览:

Webstorm 怎么调试 nodejs 会这么慢

Node Inspector 是一个可在webkit内核浏览器下进行nodejs调试的工具,其界面基本上跟chrome的调试工具一样,使用非常方便。

首先在全局环境中安装node inspector

如何调试nodejs

Node Inspector 是一个可在webkit内核浏览器下进行nodejs调试的工具,其界面基本上跟chrome的调试工具一样,使用非常方便。

首先在全局环境中安装node inspector

[javascript] view plaincopy

npm install -g node-inspector

安装完成之后,以调试模式运行需要调试的node代码,比如

[javascript] view plaincopy

node –debug-brk app.js

这种方式会在代码运行的时候,强制在第一行添加断点

这时,会出现“debugger listening on port 5858”的提示

默认的端口是5858,也可以像这样修改:

node –debug-brk[=3000] app.js

然后,启动node-inspector,

[javascript] view plaincopy

node-inspector 

(因为之前的nodejs代码在运行,所以命令行窗口没办法输入新的命令,所以启动node-inspector需要新打开一个命令行窗口来输入)

根据提示中的地址,打开

就可以看到,一个模拟Chrome调试窗口的页面,加载了node中的所有代码,具体的调试方式,就和Chrome一样了。

还有一种方式是在代码中需要添加断点的地方,加入

[javascript] view plaincopy

debugger;

以下面这种方式运行

[javascript] view plaincopy

node –debug app.js

这样代码会运行到需要debugger的地方暂停。

nodejs 模块开发怎么调试

1. 基于Nodejs内建的调试器

Nodejs提供了一个内建调试器来帮助开发者调试应用程序。想要开启调试器我们需要在代码中加入debugger标签,当Nodejs执行到debugger标签时会自动暂停(debugger标签相当于在代码中开启一个断点)。代码如下:

var path = url.parse(req.url).pathname;

debugger;

res.writeHead(200, {‘Content-Type’: ‘text/plain’});

执行命令: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

2. 基于V8插件的调试器

Nodejs是基于google V8的引擎上构建的,Google为Eclipse提供了一个对应的调试插件。关于如何在Eclipse中安装和调试Nodejs程序就不再重复描述了。唯一要注意的是在默认情况下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的回环地址是都工作的。如果你使用真实的ip地址,请检查防火墙设置。

3. 基于Chrome浏览器的调试器

既然我们可以通过V8的调试插件来调试,那是否也可以借用Chrome浏览器的JavaScript调试器来调试呢?node-inspector模块提供了这样一种可能。我们需要先通过npm来安装node-inspector

npm install -g node-inspector // -g 导入安装路径到环境变量

node-inspector是通过websocket方式来转向debug输入输出的。因此,我们在调试前要先启动node-inspector来监听Nodejs的debug调试端口。

默认情况下node-inspector的端口是8080,可以通过参数–web-port=[port]来设置端口。在启动node-inpspector之后,我们可以通过–debug或–debug-brk来启动nodejs程序。通过在浏览器输入http://[ip address]:8080/debug?port=5858,我们会得到如下的调试窗口:

这三种方法各自有优缺点,我个人比较欣赏node-inspector的方式。

怎么调试NodeJS

调试技术与开发技术构成了软件开发的基石。目前Nodejs作为新型的Web Server开发栈倍受开发者关注。总的来说Nodejs的应用程序主要有两部分: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 ‘);

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/195692.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-02 20:36
下一篇 2024-12-02 20:36

相关推荐

  • NodeJS 建立TCP连接出现粘包问题

    在TCP/IP协议中,由于TCP是面向字节流的协议,发送方把需要传输的数据流按照MSS(Maximum Segment Size,最大报文段长度)来分割成若干个TCP分节,在接收端…

    编程 2025-04-29
  • 从零开始:NodeJS的完整卸载与重新安装

    如果你是一名NodeJS开发工程师,你一定不止一次遇到过面对各种奇怪的bug和问题,不得不重新安装NodeJS的情况。那么如何完整卸载和重新安装NodeJS呢?这篇文章将会为你一步…

    编程 2025-04-22
  • Nodejs nvm:全面解析和使用

    一、什么是nvm Node.js 版本管理器(Node Version Manager),简称 nvm,是一个可以同时管理多个 Node 版本的工具。 nvm 让你可以轻松地在同一…

    编程 2025-04-13
  • Linux Nodejs安装及环境配置

    一、安装Linux操作系统 在进行Nodejs的安装前需要先安装Linux操作系统。选择适合自己的Linux操作系统,通过刻录盘或U盘进行安装。 二、安装Node.js 可以通过官…

    编程 2025-02-05
  • nodejs编程pdf,nodejs程序

    本文目录一览: 1、《深入浅出nodejs》pdf下载在线阅读全文,求百度网盘云资源 2、《nodejs开发实战详解电子式》pdf下载在线阅读全文,求百度网盘云资源 3、如何用no…

    编程 2025-01-14
  • nodejs中crypto,node nodejs

    本文目录一览: 1、求教nodejs怎么对密码进行加盐的hash加密 2、nodejs里面怎么实现HMAC-SHA1 3、nodejs怎样获取一个上传文件的MD5码 4、关于nod…

    编程 2025-01-14
  • cdnjson跨域,nodejs 跨域

    本文目录一览: 1、怎么解决跨域问题 2、如何可以跨域访问静态json文件呢? 3、JSON怎么跨域 怎么解决跨域问题 1、 通过jsonp跨域 JSONP(JSON with P…

    编程 2025-01-11
  • php转nodejs,php转nodejs代码

    本文目录一览: 1、node.js与php相比有哪些优缺点? 2、php和nodejs中的变量与数组的传值 3、php与nodejs通信问题 4、PHP和Nodejs能配合使用吗 …

    编程 2025-01-11
  • nodejs搭建webrtc(nodejs搭建web服务器缺点)

    本文目录一览: 1、基于webrtc以及nodejs的P2P实时视频demo 2、如何用nodejs搭建web服务器 3、如何用命令行开启nodejs搭建web服务器? 4、如何用…

    编程 2025-01-09
  • 包含centos7配置nodejs的词条

    本文目录一览: 1、虚拟机上centos7 nodejs怎么安装 2、centos7下用yum install 安装nodejs,默认装在哪个目录了 3、centos7怎么安装no…

    编程 2025-01-05

发表回复

登录后才能评论