VSCode 通过 REST Client 扩展支持内置 HTTP 请求:安装后新建 .http 文件,输入 GET 请求并按快捷键即可发送;需严格遵循空行、冒号格式;支持变量定义与引用、多请求分隔及响应类型控制。

VSCode 本身不内置 REST 客户端,但通过官方扩展 REST Client(由 Huachao Mao 维护)可直接在编辑器里发 HTTP 请求、查看响应、复用变量——无需切出 IDE 或装 Postman。
安装 REST Client 扩展并验证是否生效
在 VSCode 扩展市场搜索 REST Client,安装后重启(部分版本需重启)。验证方式:新建一个文件,保存为 test.http 或 api.rest,输入:
GET https://httpbin.org/get
光标停在该行,按 Ctrl+Alt+R(Windows/Linux)或 Cmd+Alt+R(macOS),若弹出响应窗口即成功。
注意:.http 是默认识别后缀,.rest 需手动在设置中启用("rest-client.useCustomFileNameExtension": true)。
写请求时必须遵守的语法格式
REST Client 对空行、冒号、换行敏感,常见失败原因不是逻辑错,而是格式错:
- 请求行(如
GET /path)和 headers 之间必须有且仅有一个空行 - header 名后必须紧跟
:,冒号后建议加一个空格(Content-Type: application/json✅,Content-Type:application/json❌ 可能解析失败) - body 必须放在 headers 下方第二个空行之后;若用 JSON body,需显式加
Content-Type: application/json - 多请求用
###分隔,不能用---或注释行代替
示例正确结构:
GET https://httpbin.org/get User-Agent: vscode-restclientPOST https://www.php.cn/link/dc076eb055ef5f8a60a41b6195e9f329 Content-Type: application/json
{ "key": "value" }
用变量管理环境与动态值
硬编码 URL 或 token 很容易在 dev/staging/prod 间出错。REST Client 支持 @name = value 定义变量,并用 {{name}} 引用:
@host = https://api.example.com @token = eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...GET {{host}}/users Authorization: Bearer {{token}}
变量定义块需放在文件最上方,且必须以 @ 开头;多个环境可拆成不同文件(如 env.dev.http + env.prod.http),再用 ### 引入。
注意:{{}} 只在请求行和 header 中生效,body 内的 {{var}} 不会被替换(JSON 字符串里要靠外部脚本或手动处理)。
响应体太大或含二进制内容怎么处理
默认响应显示文本,但遇到图片、PDF、超长日志会卡顿或乱码。此时可在请求前加注释控制行为:
-
# @responseType plain:强制按纯文本渲染(适合大日志) -
# @responseType binary:触发下载对话框(适合图片、zip) -
# @no-cache:禁用响应缓存,避免看到旧数据
这些指令必须紧贴请求行上方,且独占一行。例如:
# @responseType binary GET https://httpbin.org/image/png
另外,响应窗口右上角的「Save Response」按钮只保存原始字节,不经过任何编码转换——这点常被忽略,导致保存后的 PNG 打不开。










