Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Free RequestNew to Visual Studio Code? Get it now.
Free Request

Free Request

cxwang

|
1 install
| (0) | Free
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Free Request

Free Request 是一个 VS Code 内置的轻量接口调试扩展,目标是提供接近 Postman 的核心请求体验(集合、环境变量、请求编辑、发送与响应查看),并保持更轻量的本地工作流。

功能概览

  • Collections / Environments / History 三面板
  • 支持请求新增、编辑、复制、重命名、删除
  • 支持请求方法:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS
  • 支持 {{variable}} 模板变量替换(URL / Headers / Body / Auth)
  • 支持 Auth:No Auth、Bearer Token、Basic Auth
  • 支持 Body 模式:raw (JSON)、form-data、x-www-form-urlencoded
  • 响应面板支持 Status / Time / Size 元信息,以及 Body / Headers 页签

当前目录结构

src/
	controller/
		collectionController.ts
		envController.ts
		itemController.ts
		requestController.ts
		systemController.ts
	view/
		requestView.ts
		input.ts
	dataStore.ts
	extension.ts
	models.ts
	requestBodyParser.ts
	test/
  • extension.ts:扩展入口,负责 provider 初始化与 controller 装配
  • controller/*:命令处理与业务编排
  • view/requestView.ts:请求编辑页与响应页 Webview 渲染
  • view/input.ts:统一输入对话框与分步输入工具

模块职责与依赖方向

推荐依赖方向(由上到下):

extension.ts
	-> controller/*
		-> dataStore.ts
		-> view/*
	-> models.ts

约束建议:

  • extension.ts 仅做装配与生命周期管理,避免承载业务细节
  • controller/* 负责命令响应、参数校验与流程编排
  • dataStore.ts 负责状态与持久化,不依赖 controller
  • view/* 负责 UI 渲染与输入工具,不直接操作数据存储
  • models.ts 作为共享类型层,供所有模块依赖

与 Postman 对比

能力 Postman Free Request
Collection/Folder 管理 ✅ ✅
Environment 变量 ✅ ✅
{{变量}} 替换 ✅ ✅
HTTP Methods(GET/POST/PUT/DELETE/PATCH/HEAD/OPTIONS) ✅ ✅
Params/Headers 可视化编辑 ✅ ✅
Body 模式切换(raw/form-data/x-www-form-urlencoded) ✅ ✅
Auth(Bearer/Basic) ✅ ✅
响应查看(Body/Headers) ✅ ✅
响应性能指标(耗时/大小) ✅ ✅
Pre-request Script ✅ ❌
Test Script ✅ ❌
Cookie 管理器 ✅ ❌
Mock / Monitor / CI 集成 ✅ ❌

当前定位是「Postman 核心请求能力的 VS Code 内嵌轻量版」,不是完整替代品。

快速开始

  1. 在 VS Code 启动扩展调试(F5)。
  2. 打开侧边栏 Free Request 容器。
  3. 创建 Collection 或直接创建 Request。
  4. 在请求编辑器中设置:
    • Method(GET/POST/PUT/DELETE/PATCH/HEAD/OPTIONS)+ URL
    • Params / Headers
    • Auth(可选)
    • Body 模式与内容
  5. 点击 Send 查看响应。

变量使用示例

先在 Environments 中创建变量:

  • baseUrl = https://jsonplaceholder.typicode.com
  • token = your_token

然后在请求中使用:

  • URL: {{baseUrl}}/todos/1
  • Header: Authorization: Bearer {{token}}
  • Body: { "name": "{{userName}}" }

发送时会自动解析模板变量。

请求编辑器中的 Environment 下拉框默认项为 NO ENVIRONMENTS:

  • 选择 NO ENVIRONMENTS 时,不会获取任何环境变量
  • 仅在选择具体环境组时,才会执行 {{variable}} 替换

Body 模式说明

  • raw (JSON):按 JSON 解析,格式非法会阻止发送
  • form-data:按键值对构建 FormData
  • x-www-form-urlencoded:按键值对编码为 query string 风格请求体

开发命令

  • 安装依赖:npm install
  • 编译:npm run compile
  • 监听编译:npm run watch
  • 测试:npm test

数据存储

  • 默认文件名:collections.json
  • 固定路径:~/.cache/.free-request/collections.json
  • 也可通过命令 Free Request: 手动保存 后查看状态栏提示的完整路径

已知限制

  • 暂不支持 Postman 脚本体系(Pre-request / Tests)
  • 暂不支持 Cookie 管理、Mock、Monitor
  • 暂不支持 OAuth 2.0 等高级认证流程

下一步路线(建议)

  • 增加 Pre-request / Test Script 基础执行能力
  • 增加 Cookie 面板与请求级开关
  • 增加导入/导出(Postman Collection 基础兼容)
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft