当前位置: 首页 > 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 发送请求
  • 支持在请求中直接写请求体。

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.dtcms.com/a/337767.html

相关文章:

  • 【力扣-轮转数组 Java / Python】
  • leetcode415. 字符串相加
  • 【论文阅读】-《HopSkipJumpAttack: A Query-Efficient Decision-Based Attack》
  • Jenkins全链路教程——Jenkins调用Maven构建项目
  • 北京朝阳公园——夏日清凉来袭
  • 第7节 神经网络
  • 登上Nature!清华大学光学神经网络研究突破
  • FastAPI + React:现代 Web 前后端分离开发的全栈实践指南
  • 【原理】Unity GC 对比 C# GC
  • 电竞酒店和高校宿舍对AI云电竞游戏盒子的需求有什么不同?
  • 静态资源保存插件横评:Save All Resources 与 ResourcesSaverExt 哪个更适合你?
  • 无人机基础知识
  • 测绘级组合导航如何重新定义大型无人机的高精度导航标准?
  • 用本地代理 + ZIP 打包 + Excel 命名,优雅批量下载跨域 PDF
  • PDF转图片需要用到什么技术?苹果手机怎样将PDF转为jpg?
  • HTML/CSS 实战知识点总结:从基础到常用效果全解析
  • 2025 世界机器人大会启示录:机构学 × AI × 视频链路的融合之路
  • 【低空安全】低空安全简介
  • 27.Linux 使用yum安装lamp,部署wordpress
  • Kafka 零拷贝(Zero-Copy)技术详解
  • 【学习嵌入式-day-27-进程间通信】
  • 开放最短路径优先协议
  • Read View 在 MVCC 里如何工作的?
  • DSP音频算法工程师技能2
  • IDE开发系列(2)扩展的IDE框架设计
  • GNhao/GN号,海外SIM号怎么注册详细步骤!
  • 纯前端表格控件SpreadJS v18.0 Update1正式发布——集成AI智能化插件
  • 大数据计算引擎(一)——Spark
  • gdb的load命令和传给opeocd的monitor flash write_image erase命令的区别
  • 如何实现前后端交互以及方法传参中传字段和传对象的区别和方法。