当前位置: 首页 > news >正文

VSCode REST Client 使用总结

1. 插件简介

在这里插入图片描述

REST Client 是 VSCode 的一个插件,用于直接在编辑器中发送 HTTP/HTTPS 请求,类似 Postman,但更轻量,且可直接在代码仓库中保存请求。

主要特点:

  • 支持 GET / POST / PUT / PATCH / DELETE / OPTIONS 等常见请求。
  • 语法简洁,存为 .http.rest 文件即可。
  • 结果直接在 VSCode 内部展示(JSON 高亮、格式化、预览图片/HTML)。
  • 支持环境变量、请求链、认证(Basic、Bearer Token、OAuth2)。

2. 安装

  1. 打开 VSCode 扩展市场,搜索 REST Client
  2. 安装并重启 VSCode。
  3. 新建一个 test.http 文件即可使用。

3. 基本语法与用法

3.1 基本请求

### GET 请求
GET https://jsonplaceholder.typicode.com/posts/1### POST 请求
POST https://jsonplaceholder.typicode.com/posts
Content-Type: application/json{"title": "foo","body": "bar","userId": 1
}
  • 每个请求之间用 ### 分隔。
  • 点击上方的 Send Request 发送请求
  • 支持在请求中直接写请求体。
  • 使用变量:
    你也可以定义变量来复用
@host = https://jsonplaceholder.typicode.comGET {{host}}/posts?userId=1&sort=desc

3.2 设置请求头

GET https://httpbin.org/headers
User-Agent: REST Client
Authorization: Bearer mytoken123

3.3 查询参数

GET https://httpbin.org/get?user=neo&role=developer

3.4 变量与环境

.vscode/settings.json 中定义环境变量:

http-client.env.json

{"dev": {"host": "http://localhost:8000","token": "dev-token-123"},"prod": {"host": "https://api.example.com","token": "prod-token-xyz"}
}

上面有dev和prod环境

ctl + shift + p

  • 切换环境:命令面板 → Rest Client: Switch Environment

在请求中使用:

### 使用环境变量
GET {{host}}/users
Authorization: Bearer {{token}}
Cookie: {{token}}; {{user_id}}

3.5 动态变量

REST Client 提供内置变量:

  • {{$timestamp}} → 当前 Unix 时间戳
  • {{$uuid}} → 随机 UUID
  • {{$randomInt min max}} → 随机整数
  • {{$dotenv KEY}} → 从 .env 文件读取

示例:

POST {{host}}/logs
Content-Type: application/json{"id": "{{$uuid}}","time": "{{$timestamp}}"
}

3.6 请求链(依赖前一个响应)

### 登录,获取 token
POST {{host}}/login
Content-Type: application/json{"username": "neo","password": "123456"
}### 使用上个请求的 token
GET {{host}}/profile
Authorization: Bearer {{login.response.body.token}}

4. 响应展示

  • JSON → 自动高亮、折叠、格式化。
  • HTML → 内置浏览器预览。
  • 图片 → 可直接渲染。
  • 保存响应 → 点击右上角保存图标即可。
http://www.xdnf.cn/news/1324027.html

相关文章:

  • Linux下的软件编程——IPC机制
  • Linx--MySQL--安装笔记详细步骤!
  • k8sday10服务发现(1/2)
  • 数据泵实施VPS海外:跨国数据同步的完整解决方案
  • 45 C++ STL模板库14-容器6-容器适配器-优先队列(priority_queue)
  • 系统架构评估方法全景解析
  • 【Java基础常见辨析】重载与重写,深拷贝与浅拷贝,抽象类与普通类
  • LLM - MCP传输协议解读:从SSE的单向奔赴到Streamable HTTP的双向融合
  • mq存量消息如何处理
  • 【iOS】Block补充
  • RecSys:排序中的融分公式与视频播放建模
  • 数据结构(03)——线性表(顺序存储和链式存储)
  • 从哲学(业务)视角看待数据挖掘:从认知到实践的螺旋上升
  • 常见的光源频闪控制方式
  • CSDN转PDF【无水印且免费!!!】
  • 数字时代著作权侵权:一场资本与法律的博弈
  • Gartner发布2025年AI与网络安全成熟度曲线:用AI增强网络安全计划的27项技术与创新
  • C++ const
  • Swift 实战:判断点集是否关于某条直线对称(LeetCode 356)
  • Effective C++ 条款48:认识模板元编程
  • 【前端面试题】JavaScript 核心知识点解析(第一题到第十三题)
  • 【Python语法基础学习笔记】条件表达式和逻辑表达式
  • 03.文件管理和操作命令
  • 网站服务器使用免费SSL证书安全吗?
  • 免费又强大的 PDF 编辑器 ——PDF XChange Editor
  • MacOS 安全机制与“文件已损坏”排查完整指南
  • 【Tech Arch】Spark为何成为大数据引擎之王
  • 算法题打卡力扣第26. 删除有序数组中的重复项(easy))
  • Linux 中断机制深度分析
  • 【轨物交流】轨物科技与华为鲲鹏生态深度合作 光伏清洁机器人解决方案获技术认证!