IntelliJ IDEA HTTP Client
IntelliJ IDEA 的 HTTP 客户端编辑器是以 .http
或 .rest
结尾的文本文件。
语法
Method Request-URI HTTP-Version Header-field: Header-value Request-Body
其中注释是以 //
或 #
开头的脚本。
可使用 ###
来分隔多个请求。
对于 GET
请求,可省略请求方法。
可将长请求代码分成多行书写:
// Using line breaks with indent GET http://example.com:8080 /api /html /get ?id=123 &value=content
在请求行上加入 @no-log
注释可取消记录请求历史:
// @no-log GET example.com/api
在请求行上加入 @no-cookie-jar
注释可取消保存 cookies:
// @no-cookie-jar GET example.com/api
使用 Ctrl+J
可选择动态模板插入。
还可点击 Examples
标签,查看相应 HTTP 请求的示例代码。
使用变量
使用 {{variable}}
引用变量:
- 环境变量(点击
Ad Environment File
创建) - 动态变量,每次发送请求时才生成值:
$uuid
:生成统一标识符(UUID-v4)$timestamp
:生成当前 UNIX 时间戳$randomInt
:生成 0 到 1000 之间的随机整数
- 响应处理脚本中的变量,即
client.global.set
方法中设置的变量
响应处理脚本
在文件中直接插入响应处理脚本,以 >
开头,并以 {% %}
结尾:
GET host/api/test > {% // Response Handler Script ... %}
HTTP Response Handler
是用 ECMAScript 5.1 编写的,并暴露出了两个对象:
client
对象:保存了会话元数据。该对象状态将一直存在,直到关闭 IntelliJ IDEA 为止response
对象:保存了响应数据
例如
{% client.global.set("auth_token", response.body.json.token); %}
可被后续脚本通过{{auth_token}}
的方式引用。
可在 client
或 response
对象上,按 Ctrl+B
查看源码文档。
执行
鼠标定位到请求的第一行脚本,然后按 Alt+Enter
,可便捷地执行请求。
此外, Ctrl+Click
第一行请求,可通过默认浏览器打开该地址。
示例脚本
rest-client.private.env.json
存放自定义变量:
{ "production": { "baseUrl": "https://aip.baidubce.com", "faceBaseUrl": "https://aip.baidubce.com/rest/2.0/face/v3", "apiKey": "xxx", "secretKey": "xxx" } }
HTTP API.rest
(后缀也可以为 .http
)存放 API 请求:
# 获取 Access Token POST {{baseUrl}}/oauth/2.0/token HTTP/1.1 Content-Type: application/x-www-form-urlencoded grant_type=client_credentials &client_id={{apiKey}} &client_secret={{secretKey}} > {% client.global.set('accessToken', response.body['access_token']); client.log(client.global.get('accessToken')); %} ### # 人脸检测 POST {{faceBaseUrl}}/detect?access_token={{accessToken}} HTTP/1.1 Content-Type: : application/json { "image":"...", "image_type": "BASE64", "face_field": "quality,beauty", "liveness_control": "HIGH" }
官网连最基本的用 base64 等编码拼接参数的教程都没有,搜博客,又千篇一律。这东西连这种功能都没有?可以先把文件转成 Base64(可通过线上工具或自行编码),然后放到请求体的参数中就可以了。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论