GWT java.util.Date serialization

GWT java.util.Date serialization

本文关键字:serialization Date util java GWT      更新时间:2023-09-26

我正在构建一个scraper,一个基于GWT的web应用程序,以使我们需要在间隔的基础上完成的一些任务自动化。有两个日期选择器,用于选择开始日期和结束日期。我发现有一种算法可以将Javascript日期转换为字符串,并随http请求一起发送。例如:

2015年8月11日是VDkLYWA

2015年9月11日是VDpU$GA

11-10-2015为VDuej2A

我试着挖掘JS代码,但正如你所想象的,运气并不好。我猜在GWT项目源代码中有一个非模糊版本的反序列化,这样我就可以对它进行反向工程,但我没有使用GWT的经验,也不知道该在哪里查找。也许有人已经解决了这个问题,或者可以给我一些资源?

谢谢!

GWT有一个类com.google.gwt.lang.LongLib(在GWT-dev.jar中),它将长日期值转换为字符串。这种转换基本上是Base64转换。以下是它的工作原理示例:

Date d = new Date(115, 10, 8, 0, 0, 0); //2015-11-08 00:00:00
String s = LongLib.toBase64(d.getTime());
System.out.println(s); //Prints VDjNlRA

因此,您可以在应用程序中包含这个jar来进行转换,也可以用javascript编写相同的算法。