必须安装作者huachao mao、id为humao.rest-client的正版插件,文件保存为.http或.rest后缀,首行顶格写合法请求行(如get https://),三者缺一不可;装完需执行developer: reload window重载窗口,否则无语法高亮和send request功能。

装对插件、保存为.http后缀、首行写对请求格式,三者缺一不可——否则Ctrl+Alt+R(Windows/Linux)或Cmd+Alt+R(macOS)根本不会触发发送。
怎么确认 REST Client 插件装对了
VS Code 扩展市场搜 “REST Client” 会出现多个同名插件,必须认准作者是 Huachao Mao、ID 是 humao.rest-client 的那个。安装量超 700 万、更新日志活跃到 2026 年 4 月的是正主;点进去看详情页的 “Publisher” 字段,不是 humao 的都别点安装。
装完必须重载窗口:按 Ctrl+Shift+P(macOS 是 Cmd+Shift+P),输入 Developer: Reload Window 并执行。不 reload,右下角不会出现 HTTP 图标,.http 文件也不会有语法高亮和 Send Request 命令。
- 如果重载后仍无反应:打开命令面板搜
REST Client: Switch Environment,能调出来就说明插件已加载 - 检查是否被其他插件禁用:在 Extensions 页面搜索
rest-client,确认状态是 “Enabled”,不是 “Disabled by another extension” - 别手动下载
.vsix安装——VSCode 1.80+ 对未签名插件限制变严,容易卡在 “Installing…” 或报签名校验失败
为什么 .http 文件里点 Send Request 没反应
90% 是文件没被识别为 HTTP 类型。REST Client 只响应后缀为 .http 或 .rest 的已保存文件。临时文件、.txt、.md、甚至无后缀的文件,快捷键和右键菜单都不会出现。
即使后缀对了,第一行也必须是合法请求行:顶格写、无注释、无空格缩进、协议完整(https:// 不能少)、不能加引号。
-
GET https://httpbin.org/get✅ 合法 -
// GET https://httpbin.org/get❌ 注释行不识别 -
GET https://httpbin.org/get❌ 缩进导致解析失败 -
GET "https://httpbin.org/get"❌ 引号非法 -
GET httpbin.org/get❌ 缺少协议,会被当成相对路径
POST 请求体和请求头之间必须且仅有一个空行
REST Client 按 RFC 2616 解析文本,不是“差不多就行”。一个多余空格、少一个空行、多一个缩进,都可能导致请求发不出、报 400、或静默失败。
标准结构是:方法 URL → (可选请求头)→ 一个空行 → (可选请求体)。三者之间不能错位。
-
Content-Type: application/json必须显式写出,缺省时默认是text/plain,很多后端直接拒收 - JSON Body 必须顶格写,不能缩进;所有字符串键和值都得用英文双引号,例如
{"name":"alice"},不能用单引号或中文引号 - Body 里不能出现未转义的换行或制表符;如果复制自 AI 输出,注意检查是否混入了不可见字符
正确示例:
POST https://httpbin.org/post
Content-Type: application/json
{"name":"alice","age":30}
二进制响应(PDF/PNG/ZIP)显示为空白或乱码
这不是请求失败,而是 REST Client 默认以 UTF-8 解析响应体。状态码 200、响应头都正常,只是展示方式不匹配类型。
- 右键响应窗口,选
Save Response As保存到本地再打开 - 或点击响应头里的
Content-Type后面的View as Binary链接,就能看到原始字节流 - 这个行为容易被当成“请求没成功”,尤其在调试文件上传或图片接口时,要先确认状态码和响应头再排查











