这个 VS Code 插件会在激活后拦截全局 fetch 方法,并在控制台打印每一次 HTTP 请求的 URL。适用于需要在调试阶段快速了解扩展内部发出的网络请求。
- 在本仓库中执行
npm install(如果没有依赖,此步骤会立即完成)。 - 在 VS Code 中按
F5启动扩展调试宿主。当扩展被激活时,状态栏会提示插件已经开始监听。 - 在扩展宿主中执行任何会触发
fetch的逻辑,即可在开发者工具或终端看到形如[VS CLI Logger] fetch -> <url>的日志输出。
如果希望将插件打包为 VSIX 以便在其他环境安装,可参考以下步骤:
- 全局或项目内安装 VS Code 官方打包工具:
npm install -g @vscode/vsce或npm install --save-dev @vscode/vsce。 - 在项目根目录执行
vsce package,会生成形如vsclilogger-0.0.1.vsix的安装包。 - 在目标机器上打开 VS Code,运行
code --install-extension vsclilogger-0.0.1.vsix,或通过 “扩展” 面板右上角的 “从 VSIX 安装...” 选择该文件。 - 安装完成后,重启 VS Code,扩展会在下次启动时自动激活并开始拦截
fetch请求。
- 在
activate函数中保存原始的fetch引用,并用自定义函数替换它。 - 自定义函数会解析传入的请求参数,提取 URL,并通过
console.log打印。 - 所有调用最终都会转发给原始的
fetch,确保网络请求不受影响。 - 在扩展释放或禁用时,会恢复原始的
fetch方法。
- 如果当前运行环境没有提供全局
fetch(例如旧版本的 Node.js),扩展会弹出警告提示。 - 如果
fetch调用失败,扩展会记录错误信息并重新抛出,以便调用方感知。