核心概念
四个设计理解了,后面所有协议和场景都直白:
- 三实体模型:分组 / 环境 / 请求的关系
- 环境前置 URL 设计:为什么请求里只填相对路径
- 发送装配管线:一次发送如何把配置合成为真实请求
- 变量体系:
{{变量}}的取值来源与三种变量层
三实体模型
为什么环境绑在分组、而不是单个请求? 一个分组通常代表"某业务模块在某环境下的全部接口"。绑在分组上,切环境时整组请求一次性跟随,无需逐个改。单个请求若要用不同环境,把它放进绑了另一环境的分组即可。
环境前置 URL 设计
这是最核心、也最容易被误解的设计。
请求存相对路径,环境存基址
传统工具里每个请求都存完整 URL(https://api.example.com/v1/users),切测试环境就要批量替换域名。本工具改为:
scheme 决定协议与是否 TLS(关键)
前置 URL 按协议分条,但这条到底算哪种协议,是由 URL 开头的 scheme 判定的,scheme 同时表达"用哪种协议"和"要不要加密(TLS)":
| 协议 | 明文 scheme | 加密 scheme |
|---|---|---|
| HTTP | http:// | https:// |
| WebSocket | ws:// | wss:// |
| TCP | tcp:// | tcps:// |
| UDP | udp:// | — |
| gRPC | grpc:// | grpcs:// |
| MQTT | mqtt:// | mqtts:// |
⚠️ 易错点:给 WebSocket 填基址时必须写
ws:///wss://;若误写成https://,它会被当成 HTTP、WebSocket 请求找不到基址而失败。协议行和 scheme 要一致。
发送装配管线
点「发送」并不是直接发 socket,而是把「请求 + 分组绑的环境 + 变量」分步装配成真实请求,并在网络执行前后各插一段操作链:
要点:
- 操作链只在"执行脚本"开启时运行。App 内点发送默认执行;自动化/MCP 发送需显式开启。关掉脚本时,前置注入的 Token/加密就不生效——这也是 recipes 里"不带 Token 就 401"负控的原理。
- 前置脚本改写"将要发出的请求",后置脚本改写"拿到的响应",两者都能读写运行时变量。
变量体系
工具里有三种"变量",作用域不同。混淆它们是新手最常见的坑。
{{名字}} 到底能取到谁?
| 写法 | 取环境变量 | 取运行时变量 | 典型用途 |
|---|---|---|---|
{{名字}}(写在 URL/参数/头/body 里) | ✅ | ❌ | 引用环境配置、动态填充 |
| 脚本里读变量 | ✅ | ✅ | 跨请求传递登录 Token 等 |
记忆口诀:
{{}}只认"配置类变量",脚本读得到全部三层。运行时变量是"运行期黑板",只有脚本能擦写、{{}}看不到它。
为什么 {{authToken}} 取不到登录存的 Token? 因为登录脚本存的值落在"运行时变量"这层,{{}} 不解析它。正确做法是用前置脚本去读并注入请求头(见 recipes 场景1)。
动态变量 {{$xxx}}
{{}} 里还有一套内置动态变量,每次取值即时生成,可直接写在 URL/参数/头/body:
| 变量 | 生成内容 |
|---|---|
{{$timestamp}} / {{$timestampMs}} | 秒级 / 毫秒级时间戳 |
{{$isoTimestamp}} | ISO8601 UTC |
{{$uuid}} / {{$guid}} | UUID v4 |
{{$randomInt}} / {{$randomInt min,max}} | 随机整数(默认 0..1000) |
{{$randomBoolean}} {{$randomFullName}} {{$randomEmail}} {{$randomPhoneNumber}} {{$randomIpv4}} {{$randomIpv6}} {{$randomUrl}} {{$randomColor}} {{$randomHexadecimal}} {{$randomAlphaNumeric}} {{$randomCity}} {{$randomCountry}} {{$randomDateRecent}} {{$randomPrice}} {{$randomWord}} {{$randomLorem}} {{$randomCompanyName}} 等 | 各类随机样例数据 |
示例:GET /echo?ts={{$timestamp}}&u={{$uuid}} —— 实测每次发送 ts/u 都被替换成真实值。
小结
- 请求存路径片段,环境用前置 URL 按协议补基址,scheme 决定协议+TLS。
- 发送是装配管线:拼 URL → 插值 → 传输设置 → 前置链 → 网络 → 后置链。
- 变量分三层:
{{}}读配置类变量,脚本三层通吃;传 Token 用脚本别用{{}}。
下一步:scripting →