必须装对插件、保存为.http后缀、首行顶格写合法请求(如GET https://)三者缺一不可;插件须认准作者Huachao Mao、ID humao.rest-client,安装后需重载窗口,状态栏出现HTTP图标且.http文件有语法高亮才生效。

必须装对插件、保存为 .http 后缀、首行写合法请求,三者缺一不可——否则 Ctrl+Alt+R(Windows/Linux)或 Cmd+Alt+R(macOS)根本不会触发发送。
怎么确认 REST Client 插件装对了
VSCode 扩展市场搜 “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”。
.http 文件为什么点 Send Request 没反应
90% 是文件没被识别为 HTTP 类型。REST Client 只响应后缀为 .http 或 .rest 的已保存文件。临时文件、.txt、.md、甚至无后缀的文件,快捷键和右键菜单都不会出现。
即使后缀对了,第一行也必须是合法请求行:
- 顶格写,不能缩进、不能加注释、不能空行开头
- 协议完整:
https://不能少 - URL 不加引号(
GET "https://..."是错的) - URL 中含空格或特殊字符时,用
%20编码,别用+ - Windows 用户注意用 LF(Unix)换行,不是 CRLF;否则可能报
Invalid request line
POST 请求的 Body 和 Header 怎么写才不被忽略
REST Client 按“请求行 → 请求头 → 空行 → body”严格解析,多一个或少一个空行都会让 body 被当成 header 解析,或直接丢弃。
常见错误现象:
- 发出去的 POST 请求,后端收不到 JSON 数据 → 检查
Content-Type: application/json是否显式写出(缺省是text/plain,很多后端拒收) - 响应体里显示
"data": ""或报 400 → 检查 body 是否顶格写,不能缩进;JSON 键值必须用英文双引号,不能用单引号或中文引号 - 复制自 AI 输出的 JSON 里混入了不可见字符(如零宽空格、制表符)→ 用 VSCode 的 “Show All Characters” 功能排查
正确结构示例:
POST https://httpbin.org/post
Content-Type: application/json
{"name":"alice","age":30}
变量怎么定义和引用才生效
{{host}} 这种写法只是占位符,它不会自动有值。必须明确定义来源:
- 项目根目录下建
.rest-client(注意开头是点)或rest-client.environmentVariables配置文件 - 变量只在请求行和 header 中展开,body 里写
{{token}}不会替换 - 变量名区分大小写,
@baseUrl和{{baseurl}}不匹配 - 环境变量文件需手动启用:命令面板运行
REST Client: Switch Environment选中对应配置
定义示例(.rest-client):
@baseUrl = https://api.dev.example.com @authToken = eyJhbGciOi...
引用示例:
GET {{baseUrl}}/users
Authorization: Bearer {{authToken}}
二进制响应(PDF/PNG/ZIP)默认以 UTF-8 解析,会显示乱码或空白——这不是失败,只是展示方式不匹配类型。右键响应窗口选 Save Response As 保存再打开,或点响应头里 Content-Type 后的 View as Binary 链接。











