https://github.com/grinzero/node-network-devtools
Inspecting Node.js's Network with Chrome DevTools✨
https://github.com/grinzero/node-network-devtools
browser chrome chrome-devtools chrome-devtools-protocol devtools inspect inspector javascript monitor network node nodejs
Last synced: 6 months ago
JSON representation
Inspecting Node.js's Network with Chrome DevTools✨
- Host: GitHub
- URL: https://github.com/grinzero/node-network-devtools
- Owner: GrinZero
- License: mit
- Created: 2024-05-28T17:24:13.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-16T06:36:30.000Z (12 months ago)
- Last Synced: 2024-10-17T23:19:01.968Z (12 months ago)
- Topics: browser, chrome, chrome-devtools, chrome-devtools-protocol, devtools, inspect, inspector, javascript, monitor, network, node, nodejs
- Language: TypeScript
- Homepage: https://grinzero.github.io/node-network-devtools/
- Size: 2.75 MB
- Stars: 84
- Watchers: 1
- Forks: 3
- Open Issues: 4
-
Metadata Files:
- Readme: README-zh_CN.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
![]()
Node Network Devtools
🔮 让node程序支持用chrome devtool的network选项卡调试
🦎 等同于浏览器的爬虫体验
⚙️ Powered by CDP
![]()
![]()
![]()
---
[English](README.md) | 简体中文
## 📖 介绍
如你所见,添加`--inspect`选项打开的node程序并不支持network标签,因为它不去代理用户请求。
node network devtools正是为了解决这个问题,它一个允许您使用chrome devtools的network选项卡调试nodejs发出的请求,让debugger过程等同于浏览器中的网络爬虫体验。## 🎮 TODO
- [x] HTTP/HTTPS
- [x] req/res headers
- [x] payload
- [x] json str response body
- [x] binary response body
- [x] stack follow
- [x] show stack
- [x] click to jump
- [x] base
- [x] Sourcemap
- [x] WebSocket
- [x] messages
- [x] payload
- [x] headers
- [ ] Compatibility
- [x] commonjs
- [x] esmodule
- [ ] Bun
- [ ] Undici
- [ ] undici.request
- [x] undici.fetch## 👀 预览

## 📦 快速开始
### 1. 安装
```bash
# 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
只需将以下代码添加到项目的入口文件中即可。
```typescript
import { register } from 'node-network-devtools'process.env.NODE_ENV === 'development' && register()
```如果需要停止调试网络请求并消除副作用,只需使用 `register` 方法的返回值进行清理。
```typescript
import { register } from 'node-network-devtools'const unregister = register()
unregister()
```