IntelliJ IDEA 自带的 HTTP Client 是一个非常强大的工具,用于测试和调试 RESTful 接口。它支持多种请求方法、参数传递、文件上传、身份验证等功能,非常适合前后端联调或接口测试。
🧩 一、基础使用
1. 创建 .http 文件
-
在任意目录下创建
.http文件(如test.http)。 -
文件名可以自定义,但后缀必须是
.http或.rest。
2. 发送 GET 请求
GET http://localhost:8080/api/test?name=Tom Accept: application/json
说明:
-
[GET]:请求方式。
-
http://localhost:8080/api/test?name=Tom:目标 URL。 -
Accept: application/json:告诉服务器期望返回 JSON 格式数据。
3. 发送 POST 请求(JSON)
POST http://localhost:8080/api/create Content-Type: application/json { "name": "Tom", "age": 25 }
说明:
-
Content-Type: application/json:指定发送的是 JSON 数据。 -
空行之后写入 JSON 内容。
4. 发送 POST 请求(表单)
POST http://localhost:8080/api/login
Content-Type: application/x-www-form-urlencoded
username=admin&password=123456
5. 发送 POST 请求(文件上传)
POST http://localhost:8080/api/upload
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="example.txt"
Content-Type: text/plain
这是文件内容
------WebKitFormBoundary7MA4YWxkTrZu0gW--
🔐 二、认证与 Token 支持
1. Bearer Token 认证
GET http://localhost:8080/api/secure
Authorization: Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.xxxxx
2. Basic Auth
GET http://localhost:8080/api/basic-auth
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
dXNlcm5hbWU6cGFzc3dvcmQ=是username:password的 Base64 编码。
💡 三、变量与环境配置(Environment)
1. 定义环境变量
在项目根目录下创建 .idea/http-client.env.json 文件:
{ "dev": { "host": "localhost:8080" }, "prod": { "host": "api.example.com" } }
2. 使用变量
GET http://{{host}}/api/test
切换环境:
-
点击运行按钮右侧的下拉框,选择
dev或prod。
🔄 四、脚本化处理响应(Tests)
你可以在每个请求后添加 > 符号来编写 JavaScript 脚本,对响应进行断言或提取变量。
📁 五、保存历史记录
-
每次执行的请求会自动保存在
.idea/httpRequests/目录下。 -
可以手动打开查看之前的请求历史。
🧪 六、高级功能
1. 多个请求按顺序执行
你可以在一个 .http 文件中写多个请求,并通过点击“Run All”按钮按顺序执行。
### 请求 1 GET http://localhost:8080/api/login
### 请求 2 GET http://localhost:8080/api/dashboard
Authorization: Bearer {{login_response_token}}
使用
{{variable_name}}提取上一个请求的响应内容。
2. 提取响应字段作为变量
POST http://localhost:8080/api/login
Content-Type: application/json
{ "username": "admin", "password": "123456" }
> {% client.global.set("auth_token", response.json.token);
%}
然后在其他请求中使用:
GET http://localhost:8080/api/secure
Authorization: Bearer {{auth_token}}
📌 七、快捷键与操作技巧
|
功能 |
快捷键 |
|
运行当前请求 |
|
|
查看响应结果 |
自动弹出窗口 |
|
新建 |
|
|
切换环境 |
点击右上角下拉框 |
✅ 八、最佳实践建议
-
将接口测试用例统一放在
/test或/api-tests目录。 -
使用环境变量区分开发、测试、生产环境。
-
结合脚本做自动化断言,提升测试效率。
-
使用全局变量管理 Token 和用户信息。
-
每个接口都加上注释说明用途。
📝 九、总结
|
功能 |
说明 |
|
支持所有 HTTP 方法 |
GET、POST、PUT、DELETE 等 |
|
支持各种 Content-Type |
JSON、form-data、x-www-form-urlencoded |
|
支持 Token 认证 |
Bearer、Basic Auth |
|
支持变量提取 |
提取响应值供后续请求使用 |
|
支持脚本断言 |
验证接口行为是否符合预期 |
|
支持环境隔离 |
dev、test、prod 环境自由切换 |
💡 **推荐场景**:
-
前端开发者快速调试后端接口
-
后端开发者本地测试 API 行为
-
测试人员编写自动化测试脚本
-
教学演示 RESTful 接口调用
IntelliJ IDEA HTTP Client 使用教程
2788

被折叠的 条评论
为什么被折叠?



