You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在请求体中直接使用{{$randomInt}}并将值保存至环境变量

可行实现方法

首先要注意:你之前的预请求脚本写法存在值不一致的隐患——{{$randomInt}}是Postman内置动态变量,每次调用解析都会生成新的随机数,预请求脚本里replaceIn拿到的值,和后续请求体渲染时生成的值是两次独立生成的结果,很可能不相等。

如果要实现「请求体用随机数、同时自动把实际发送的随机值存到环境变量」的需求,有两种稳定方案:


方案1:预请求脚本极简赋值(推荐,无值不一致问题)

不需要调用replaceIn解析内置动态变量,直接在预请求脚本里生成随机数赋值给环境变量,请求体直接引用这个环境变量即可,全程值唯一:

  • 预请求脚本仅需1行代码:
// 生成0-1000范围的随机整数,和$randomInt默认范围一致
pm.environment.set("rand_int", Math.floor(Math.random() * 1001))
  • 请求体写法:
{
   "gårdsnummer": {{rand_int}}
}

这个方案性能最好,值从生成到发送全程可控,不会出现存值和发出去的值不匹配的问题,也满足你不想写冗余预请求代码的需求。


方案2:保留请求体{{$randomInt}}写法,请求后自动存值

如果你一定要在请求体里直接写{{$randomInt}},不想修改请求体现有写法,可以在Tests脚本中抓取本次实际发送的请求体解析后的值,存入环境变量:

  • Tests脚本添加如下代码:
// 解析本次实际发出的原始请求体,提取对应字段值存入环境变量
const sentRequestBody = JSON.parse(pm.request.body.raw)
pm.environment.set("rand_int", sentRequestBody.gårdsnummer)
  • 请求体完全保留你原来的写法即可:
{
   "gårdsnummer": {{$randomInt}}
}

注意:这个方案的存值动作发生在请求发送完成之后,如果你需要在本次请求的URL参数、请求头、鉴权字段里同步使用这个随机值,该方案不适用,仅适合后续请求需要复用本次随机数的场景。


内容的提问来源于stack exchange,提问作者Nazmul Hossain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 08:45:38