在使用 Express.js 进行 Web 开发时,跟踪和调试是非常重要的技巧。这些技巧可以帮助我们更快地诊断错误,从而提高代码质量和开发效率。
在这篇文章中,我们将介绍一些实用的 Express.js 跟踪和调试技巧,包括日志记录、错误处理和调试工具。
日志记录
日志记录是一种记录应用程序运行时消息的技术,包括对请求的响应、错误信息和调试信息等。在生产环境中,日志记录可以帮助我们监控应用程序的稳定性和性能,以及快速定位和解决问题。
Express.js 提供了一个名为 morgan
的中间件,可以轻松地添加日志记录到应用程序中。安装 morgan
:
--- ------- ------
然后在应用程序中引用它:
----- ------- - ------------------- ----- ------ - ------------------ ----- --- - ---------- ------------------------
在这个例子中,我们使用 tiny
格式的日志记录。morgan
支持多种格式,可以根据自己的需要进行设置。启动应用程序后,可以在控制台中看到类似下面的输出:
--- - --- ----- -- - -
这是一个请求的日志信息,包括请求方法、路径、响应状态码、持续时间和响应大小等。
错误处理
在开发过程中,错误是不可避免的。一个好的错误处理机制可以帮助我们更快地定位和解决错误,并减少应用程序出错的风险。
Express.js 提供了一个中间件函数 next(error)
,可以用来处理错误。在路由处理程序中,如果出现了错误,我们可以将错误传递给 next(error)
。这会在错误堆栈中的下一个中间件函数中传入错误对象,并将控制权传递给全局错误处理程序。
-------------------- ----- ---- ----- -- - -- ---------------- - ----- ----- - --- ----------- -- ---------- ------------ - ---- ------------ - ---- - -- -- --------- - --- -- ------ ----- ------- ------------- ---- ---- ----- -- - --------------------- -- ----- ------------------- - -------- ------------ ------ --- --- ---
在这个例子中,当用户请求中没有提供 ID
参数时,我们会将一个错误对象传递给 next()
,控制权将传递到全局错误处理程序中。在全局错误处理程序中,我们将响应状态码设置为 400,并渲染一个错误页面来通知用户。
调试工具
除了日志记录和错误处理外,调试工具也是调试 Express.js 应用程序的好帮手。
Nodemon
Nodemon 是一个监视文件更改并自动重启应用程序的工具。它可以自动检测应用程序中的更改,并使我们免于手动地停止和重新启动应用程序。
安装和使用 Nodemon:
--- ------- ------- ----------
然后在 package.json
文件中添加一个脚本:
- ---------- - ------ -------- ------- - -
当我们运行 npm run dev
时,Nodemon 会监视文件更改并自动重启应用程序。
Chrome 开发者工具
Chrome 开发者工具 是一款强大的工具,它可以帮助我们调试 JavaScript 和 HTML/CSS。在 Express.js 应用程序中,我们可以使用 Chrome 开发者工具来调试客户端和服务器端代码。
在 Chrome 开发者工具的 Network 选项卡中,我们可以查看请求和响应的详细信息,包括请求和响应头、请求参数和响应数据等。
在 Sources 选项卡中,我们可以调试 JavaScript 代码,例如设置断点、执行代码和监视变量等。
在 Console 选项卡中,我们可以调试客户端和服务器端的 JavaScript 代码。在服务器端代码中,我们可以使用 console.log()
来输出调试信息,例如:
-------------------- ----- ---- -- - ----------------- ----- --------------- -------------- --- - - --------------- ---
在客户端代码中,我们可以使用 debugger
语句来设置调试断点,例如:
-------- ------------- - --------- -- -- --------- -
当我们单击调用 handleClick()
函数的按钮时,代码会在 debugger
语句处暂停,我们可以在 Chrome 开发者工具的 Sources 选项卡中进行调试。
结论
在本文中,我们介绍了几个可以帮助我们跟踪和调试 Express.js 应用程序的技巧。通过加强日志记录、错误处理和调试工具的使用,可以帮助我们更快地定位和解决问题,提高应用程序的质量和开发效率。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/671b16af9babaf620fa7be72