rest client 插件安装失败主因是 vscode 1.80+ 默认禁用未签名插件且无法访问 marketplace;需检查网络代理、卸载冲突插件、避免手动安装 .vsix;.http 文件须用 lf 换行、无空行缩进、url 不加引号;请求头与 body 需严格按格式书写;大响应建议关闭预览与语法高亮。

REST Client 插件装不上?先确认 VSCode 版本和网络代理
VSCode 1.80+ 默认禁用不签名插件,而 REST Client 是微软认证插件,但国内用户常因网络问题卡在“正在安装”或提示 Failed to fetch。不是插件坏了,是 VSCode 没连上 Marketplace。
- 打开命令面板(
Ctrl+Shift+P或Cmd+Shift+P),输入Developer: Show Running Extensions,确认没有同名冲突插件(比如旧版rest-client或第三方仿制版) - 如果公司网络有代理,进 VSCode 设置搜
http.proxy,填对代理地址;不确定就临时关掉代理再试 - 别从外部下载
.vsix手动安装——除非你明确需要旧版本,否则容易触发签名校验失败
写 .http 文件时 404 或 405?检查 URL 格式和换行符
REST Client 不解析 Markdown 或普通文本,只认后缀为 .http 或 .rest 的文件,且第一行必须是完整 HTTP 方法 + URL,不能空行、不能缩进、不能用中文引号。
- 错误写法:
GET "https://api.example.com/v1/users"(加了英文双引号) - 正确写法:
GET https://api.example.com/v1/users - 如果 URL 含空格或特殊字符,用
%20编码,别用+—— 后者在 query string 中才等价空格,REST Client 不做额外解析 - Windows 用户注意:用 LF(Unix)换行,不是 CRLF;否则可能报
Invalid request line
怎么带请求头、参数和 JSON body?语法就三行,但顺序不能错
REST Client 按“请求行 → 请求头 → 空行 → body”严格解析,多一个空行或少一个空行都会让 body 被忽略,或者 header 被当成 body。
- Header 必须顶格写,冒号后至少一个空格:
Content-Type: application/json(Content-Type:application/json会失效) - Query 参数直接拼在 URL 后,不用单独写:
GET https://api.example.com/search?q=foo&limit=10 - JSON body 前必须有空行,且不能有任何前导空格:
POST https://api.example.com/users Content-Type: application/json { "name": "Alice", "email": "a@example.com" }
响应体太大卡死?关掉自动预览和语法高亮能省一半内存
默认开启的 rest-client.previewResponseInUntitledDocument 会在新标签页渲染响应,遇到几 MB 的 JSON 或二进制响应(如 PDF)时,VSCode 容易假死。这不是 bug,是编辑器本身对大文本的渲染策略限制。
- 进设置搜
rest-client.previewResponseInUntitledDocument,关掉它;响应会以纯文本形式显示在输出面板,更稳定 - 如果只是调试,不需要高亮,顺手关掉
rest-client.enableResponseSyntaxHighlighting - 大文件响应别点“Save Response”,改用右键菜单里的
Copy Response Body粘贴到外部编辑器处理
真正麻烦的是跨域、重定向和 cookie 管理——REST Client 默认不跟随 302,也不持久化 session,这些得靠 @host 变量或手动加 Cookie: 头,不是开个开关就能解决的。











