0

0

Node.js调试端口如何设置?

小老鼠

小老鼠

发布时间:2025-08-29 19:36:02

|

880人浏览过

|

来源于php中文网

原创

设置Node.js调试端口可通过命令行参数(如--inspect=9230)或环境变量(如NODE_OPTIONS='--inspect=9232')实现,需选择未被占用的端口并确保防火墙允许通信,推荐使用Chrome DevTools或VS Code连接调试。

node.js调试端口如何设置?

Node.js调试端口的设置,简单来说,就是告诉Node.js的运行环境,在哪个端口监听调试器的连接。这对于开发阶段的代码调试至关重要,能让你像剥洋葱一样,一层一层地看清代码运行的内部机制。

解决方案:

设置Node.js调试端口,主要有两种方式:命令行参数和环境变量。

1. 命令行参数:

这是最直接的方式。启动Node.js应用时,通过

--inspect
--inspect-brk
参数指定调试端口。

  • --inspect=[port]
    : 启用调试器。可选的
    port
    参数指定监听端口,默认是9229。例如:
    node --inspect=9230 myapp.js
    将在9230端口启动调试器。

  • --inspect-brk=[port]
    : 与
    --inspect
    类似,但会在代码开始执行前暂停,方便你从一开始就进行调试。例如:
    node --inspect-brk=9231 myapp.js

2. 环境变量:

可以通过设置

NODE_OPTIONS
环境变量来指定调试参数。

  • 例如:
    export NODE_OPTIONS='--inspect=9232'
    (Linux/macOS) 或
    set NODE_OPTIONS=--inspect=9232
    (Windows)。然后运行
    node myapp.js
    ,调试器将在9232端口启动。

选择哪种方式取决于你的具体使用场景。命令行参数更灵活,适用于临时调试;环境变量则更适合配置长期运行的调试环境。

如何选择合适的调试端口?

选择调试端口,看似简单,其实也有一些门道。首先,要确保你选择的端口没有被其他程序占用。常用的端口如80、443、8080等,很可能已经被占用。建议选择一个不常用的端口,例如9229、9230、9231等等。

其次,如果你同时运行多个Node.js应用,并且都需要调试,那么每个应用必须使用不同的端口。否则,调试器会发生冲突,让你摸不着头脑。

最后,如果你的应用运行在防火墙后面,还需要确保防火墙允许调试端口的流量通过。不然,即使调试器启动了,你也无法连接到它。

调试端口被占用怎么办?

调试端口被占用,是开发过程中经常遇到的问题。遇到这种情况,不要慌,先找出是哪个程序占用了这个端口。

在Linux/macOS下,可以使用

lsof -i :端口号
netstat -tulnp | grep 端口号
命令来查看占用端口的进程。例如,要查看9229端口是否被占用,可以运行
lsof -i :9229

Sesame AI
Sesame AI

一款开创性的语音AI伴侣,具备先进的自然对话能力和独特个性。

下载

在Windows下,可以使用

netstat -ano | findstr "端口号"
命令来查看。例如,要查看9229端口是否被占用,可以运行
netstat -ano | findstr "9229"

找到占用端口的进程后,可以选择关闭该进程,或者更改你的Node.js应用的调试端口。

有时候,端口可能被一些不常用的程序占用,例如一些后台服务。关闭这些程序,可以释放端口,让你的Node.js应用顺利启动调试器。

如何使用Chrome DevTools连接到调试端口?

设置好调试端口后,下一步就是使用Chrome DevTools连接到调试器。Chrome DevTools是Node.js调试的利器,它提供了强大的调试功能,例如断点、单步执行、变量查看等等。

打开Chrome浏览器,在地址栏输入

chrome://inspect
,进入DevTools的Inspect页面。如果你的Node.js应用已经启动了调试器,那么在"Remote Target"部分应该能看到你的应用。

点击"Inspect"按钮,就可以打开一个新的DevTools窗口,连接到你的Node.js应用。

如果DevTools没有自动检测到你的应用,可以手动添加。点击"Configure..."按钮,添加你的调试端口。

连接成功后,你就可以在DevTools中设置断点,单步执行代码,查看变量的值,等等。

除了Chrome DevTools,还有哪些调试工具可以选择?

虽然Chrome DevTools是Node.js调试的首选工具,但还有其他一些调试工具可以选择,例如:

  • Visual Studio Code: VS Code是一款强大的代码编辑器,它内置了Node.js调试功能。你可以在VS Code中设置断点,单步执行代码,查看变量的值,等等。VS Code的调试功能非常方便,可以让你在编写代码的同时进行调试。

  • Node Inspector: Node Inspector是一个基于Web的Node.js调试器,它使用Blink Developer Tools协议,与Chrome DevTools类似。Node Inspector已经不再维护,但仍然可以使用。

  • ndb: ndb是Google出品的一款Node.js调试器,它基于Chrome DevTools协议,提供了更强大的调试功能,例如时间旅行调试、CPU性能分析等等。ndb是Node Inspector的替代品。

选择哪个调试工具取决于你的个人喜好和具体需求。Chrome DevTools和VS Code是比较常用的选择,它们提供了强大的调试功能,并且易于使用。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
chrome什么意思
chrome什么意思

chrome是浏览器的意思,由Google开发的网络浏览器,它在2008年首次发布,并迅速成为全球最受欢迎的浏览器之一。本专题为大家提供chrome相关的文章、下载、课程内容,供大家免费下载体验。

1057

2023.08.11

chrome无法加载插件怎么办
chrome无法加载插件怎么办

chrome无法加载插件可以通过检查插件是否已正确安装、禁用和启用插件、清除插件缓存、更新浏览器和插件、检查网络连接和尝试在隐身模式下加载插件方法解决。更多关于chrome相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

838

2023.11.06

chrome什么意思
chrome什么意思

chrome是浏览器的意思,由Google开发的网络浏览器,它在2008年首次发布,并迅速成为全球最受欢迎的浏览器之一。本专题为大家提供chrome相关的文章、下载、课程内容,供大家免费下载体验。

1057

2023.08.11

chrome无法加载插件怎么办
chrome无法加载插件怎么办

chrome无法加载插件可以通过检查插件是否已正确安装、禁用和启用插件、清除插件缓存、更新浏览器和插件、检查网络连接和尝试在隐身模式下加载插件方法解决。更多关于chrome相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

838

2023.11.06

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

530

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

576

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

760

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

6207

2023.08.17

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Node.js 教程
Node.js 教程

共57课时 | 13.2万人学习

【web前端】Node.js快速入门
【web前端】Node.js快速入门

共16课时 | 2.1万人学习

Node.js-前端工程化必学
Node.js-前端工程化必学

共19课时 | 3.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号