跳转到内容

HTTP 与 REST

这是最常见的请求类型:一切使用 HTTP 通信的场景,首先就是 REST API。

在树中右键 ▸ 添加 ▸ HTTP 请求

一个 HTTP 请求标签页,包含 URL、请求头 / 路径参数 / 参数 / 正文各个区块,右侧是响应面板

GETPOSTPUTPATCHDELETEHEADOPTIONSQUERY

URL 的任何位置都接受 {{变量}} —— 协议、主机、端口、路径、查询字符串。解析后的值显示在字段下方。

三个列表用于补全 URL:

  • 查询参数?键=值);
  • 路径参数,用于替换路径中的命名段;
  • 请求头

每一行都有一个启用复选框、一个值类型和一段说明。

四大类:

类型用途
文本JSON、XML、纯文本 —— 带语法高亮和格式化
文件发送磁盘上某个文件的内容
表单multipart/form-data命名字段,可包含文件
x-www-form-urlencoded编码在正文中的命名字段
  • 超时:以毫秒为单位,仅作用于该请求;未设置时使用全局值。
  • 跟随重定向:默认启用。关闭它可以直接观察 3xx 响应本身及其 Location 响应头。

状态码、耗时、大小、响应头,以及按内容类型渲染的正文:可折叠的 JSON 查看器、缩进的 XML、图片预览、纯文本。 历史记录标签页可访问之前的执行结果。

为请求附加一条身份验证路由,即可自动注入请求头并自动续期令牌。参见 身份验证

Restorm 也可以托管一个 HTTP 服务器,用来测试客户端如何消费它 —— 典型场景是您应用的代码, 在测试期间把它指向 localhost

通过添加 ▸ HTTP 服务器添加一个:它在 localhost:<port><path> 上监听某个方法 + 路径的组合, 并以您配置的状态码、响应头和正文进行响应。其他协议的托管方式相同 —— 参见服务器模式模拟 HTTP API

代码片段标签页提供二十四种语言和库:cURL、JavaScript(Fetch、Axios)、TypeScript、Python(Requests、 http.client、aiohttp)、原生 Node.js、Go、Rust(reqwest)、Java(HttpClient、 OkHttp)、C#(HttpClient)、PHP(cURL、Guzzle)、Ruby(Net::HTTP、Faraday)、Swift (URLSession)、Kotlin(OkHttp)、Dart、R(httr)、PowerShell、Elixir(HTTPoison)、 Clojure(clj-http)。

已经有 OpenAPI 规范、Postman 集合、HAR 文件,或者只有一条 curl 命令? 文件 ▸ 导入会为您重建整棵树。参见导入与导出