转换日期从EST到UTC [英] jmeter convert date from EST to UTC

查看:655
本文介绍了转换日期从EST到UTC的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在处理API响应的日期。 API的日期在EST。我需要将EST(技术上EDT)的日期转换为UTC,然后与其他值为UTC格式的API响应的日期进行比较。



我正在尝试这样做在JMeter中的Javascript。我有一个BSF PostProcessor作为我的HTTP请求采样器的孩子。



我的输入:
endDate = 2014-01-31T23:59:59



几个选择,但没有一个让我获得我期待的价值。他们都回到我的调试采样器上。



myNewDate =无效日期



dt1 =无效日期

  vars.put(myendDate,vars.get(endDate)); 
var dt = new Date('myendDate');
vars.put(dt1,dt.toUTCString());

var myDate = new Date('$ {endDate}');
vars.put(myNewDate,myDate.toUTCString());


var myDate = new Date('$ {endDate}');
myDate.toISOString();
vars.put(myDate1,myDate);

我认为我的BSF PostProcessor使用Javascript作为语言创建Date对象时遇到问题。



任何输入?

解决方案

添加groovy-all.jar到jmeter / lib文件夹



并使用JSR223采样器与Groovy和编译缓存键和以下代码:

  import java.text.SimpleDateFormat; 
import java.util.TimeZone;
import java.util.Date

SimpleDateFormat estFormat = new SimpleDateFormat(yyyy-MM-dd'T'HH:mm:ss);
SimpleDateFormat gmtFormat = new SimpleDateFormat(yyyy-MM-dd'T'HH:mm:ss);
TimeZone gmtTime = TimeZone.getTimeZone(GMT);
TimeZone estTime = TimeZone.getTimeZone(EST);
estFormat.setTimeZone(estTime);
gmtFormat.setTimeZone(gmtTime);
String endDate = vars.get(endDate);
Date endDateAsDate = estFormat.parse(endDate);
vars.put(dt1,gmtFormat.format(endDateAsDate));

然后可以使用$ {dt1}


I am working with dates that are on an API response. Date coming from API are in EST. I need to convert the EST (technically EDT) date to UTC and then compare with dates from another API response whose values are in UTC format

I am trying to do this with Javascript in JMeter. I have a "BSF PostProcessor" as a child of my "HTTP Request" sampler.

My input: endDate=2014-01-31T23:59:59

I tried a few options but none of them get me the value I am expecting. They all come back on my debug sampler as..

myNewDate=Invalid Date

dt1=Invalid Date

vars.put("myendDate", vars.get("endDate"));
var dt = new Date('myendDate');
vars.put("dt1", dt.toUTCString());

var myDate = new Date('${endDate}');
vars.put("myNewDate", myDate.toUTCString());


var myDate = new Date('${endDate}');
myDate.toISOString();
vars.put("myDate1", myDate);

I think my BSF PostProcessor with Javascript as Language is having trouble creating the Date object.

Any inputs please?

解决方案

Add groovy-all.jar to jmeter/lib folder

And use JSR223Sampler with Groovy and Compilation Cache key and following code:

import java.text.SimpleDateFormat;
import java.util.TimeZone;
import java.util.Date;

SimpleDateFormat estFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
SimpleDateFormat gmtFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
TimeZone gmtTime = TimeZone.getTimeZone("GMT");
TimeZone estTime = TimeZone.getTimeZone("EST"); 
estFormat.setTimeZone(estTime);
gmtFormat.setTimeZone(gmtTime); 
String endDate = vars.get("endDate");
Date endDateAsDate= estFormat.parse(endDate);
vars.put("dt1", gmtFormat.format(endDateAsDate));

You can then use ${dt1}

这篇关于转换日期从EST到UTC的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆