Skip to content

Latest commit

 

History

History
88 lines (66 loc) · 2.54 KB

File metadata and controls

88 lines (66 loc) · 2.54 KB


Node Network Devtools

🔮 让node程序支持用chrome devtool的network选项卡调试

🦎 等同于浏览器的爬虫体验

⚙️ Powered by CDP

NodeJs Chrome TypeScript


English | 简体中文

📖 介绍

如你所见,添加--inspect选项打开的node程序并不支持network标签,因为它不去代理用户请求。 node network devtools正是为了解决这个问题,它一个允许您使用chrome devtools的network选项卡调试nodejs发出的请求,让debugger过程等同于浏览器中的网络爬虫体验。

🎮 TODO

  • HTTP/HTTPS
    • req/res headers
    • payload
    • json str response body
    • binary response body
    • stack follow
      • show stack
      • click to jump
        • base
        • Sourcemap
  • WebSocket
    • messages
    • payload
    • headers
  • Compatibility
    • commonjs
    • esmodule
    • Bun
  • Undici
    • undici.request
    • undici.fetch

👀 预览

img

📦 快速开始

1. 安装

# npm
npm install node-network-devtools -D
# or pnpm
pnpm add node-network-devtools -D
# or yarn
yarn add node-network-devtools -D

2. Usage

只需将以下代码添加到项目的入口文件中即可。

import { register } from 'node-network-devtools'

process.env.NODE_ENV === 'development' && register()

如果需要停止调试网络请求并消除副作用,只需使用 register 方法的返回值进行清理。

import { register } from 'node-network-devtools'

const unregister = register()
unregister()

⚙️ 配置选项

register 函数接受一个可选的 RegisterOptions 对象来定制其行为。有关可用选项及其详细说明的完整列表,请参阅选项文档