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

JMeter中运行/回放时获取当前日期时间长整型(LONG)格式值的方法咨询

JMeter中运行/回放时获取当前日期时间长整型(LONG)格式值的方法咨询

嗨,我来帮你搞定这个问题!你需要的其实是获取当前时间的毫秒级时间戳(也就是你示例里那种Long格式的数值),在JMeter里有几种简单好用的实现方式,下面给你一步步说明:

方法一:直接使用JMeter内置函数最快上手

JMeter自带的__time()函数默认就会返回当前时间的毫秒级时间戳,完全符合你要的Long格式。如果你的SubmittedDate和_CreatedDate需要像示例那样差1毫秒,还可以搭配__timeShift()函数实现时间偏移:

  • 对于SubmittedDate,直接用${__time(,)}作为value值
  • 对于_CreatedDate,用${__timeShift(,,+1ms,,)}来生成比当前时间晚1毫秒的时间戳

把它们放到你的请求JSON体里就是这样:

"SubmittedDate":{"value":${__time(,)}},
"_CreatedDate":{"value":${__timeShift(,,+1ms,,)}}

运行或回放的时候,JMeter会自动把这些函数替换成实时的毫秒级时间戳,完美匹配你需要的格式。

方法二:用JSR223元件实现更灵活的控制

如果需要把时间戳存为变量方便后续复用,或者有更复杂的时间逻辑,可以给你的请求添加一个JSR223 PreProcessor,然后用Groovy代码(JMeter里性能最优的脚本语言)生成时间戳:

// 获取当前时间的毫秒级时间戳
long currentTime = System.currentTimeMillis();
// 把时间戳存入JMeter变量,方便后续引用
vars.put("submittedDate", String.valueOf(currentTime));
vars.put("createdDate", String.valueOf(currentTime + 1));

之后在请求的JSON体里直接引用这些变量就行:

"SubmittedDate":{"value":${submittedDate}},
"_CreatedDate":{"value":${createdDate}}

小提示

注意时间戳是数值类型,所以在JSON里引用的时候不要加引号,否则会被当成字符串处理,可能导致接口请求报错哦。

备注:内容来源于stack exchange,提问作者user41456

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 13:07:33