Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在后端接收ZoneDateTime对象时出现问题_Javascript_Java_Spring_Timezone Offset_Zoneddatetime - Fatal编程技术网

Javascript 在后端接收ZoneDateTime对象时出现问题

Javascript 在后端接收ZoneDateTime对象时出现问题,javascript,java,spring,timezone-offset,zoneddatetime,Javascript,Java,Spring,Timezone Offset,Zoneddatetime,我面临着从前端接收数据的问题。 我以“2020-01-03T00:00:00+02:00”格式从前端将日期发送到后端的ZoneDateTime对象。但是,我收到的不是2020-01-03T00:00Z[UTC],而是2020-01-02T22:00Z[UTC](实际减去2小时) 问题: 有没有办法使ZonedDateTime库不转换为UTC或不转换为负时区? 也许有注释 控制器和对象简单代码示例 来自前端的对象: @DIfferentsLombokAnnotations public class

我面临着从前端接收数据的问题。 我以
“2020-01-03T00:00:00+02:00”
格式从前端将日期发送到后端的
ZoneDateTime
对象。但是,我收到的不是
2020-01-03T00:00Z[UTC]
,而是
2020-01-02T22:00Z[UTC]
(实际减去2小时)

问题:

有没有办法使ZonedDateTime库不转换为UTC或不转换为负时区? 也许有注释

控制器和对象简单代码示例

来自前端的对象:

@DIfferentsLombokAnnotations
public class Filters {
  private ZonedDateTime startDate;

  //Other fields
}
控制器:

@PostMapping("/ggg")
public List<ResponceObject> method(@RequestBody Filters filters) {
  //any code
 }
@PostMapping(“/ggg”)
公共列表方法(@RequestBody过滤器){
//任何代码
}

ZonedDateTime仅支持UTC或UTC+2,这将解释为什么您会得到结果。一个选项是不发送ZonedDateTime,而是发送LocalDate、LocalTime、ZoneId和ZoneOffset,然后在后端解析为ZonedDateTime。一天结束时,ZonedDateTime已经由这些组件组成。

您必须在ISO中设置日期格式。在这里看一看:谢谢,但实际上后端有问题您得到了正确的时间点(只是表达方式不同,转换为UTC)。没有减去两个小时。也许您想传递一个
LocalDate
。它是一个没有时区或偏移的日期,也没有一天中的时间,例如
2020-01-03
,因此时间不可能是错误的。有没有办法使用矩.js lib传递LocalDate?我如何将其转换为ZDT到该值:2020-01-03T00:00Z[UTC]?主要的问题是,我只需要zdtobjecctunderstand,但不幸的是,由于特定的体系结构,我无法更改前端请求。但是谢谢你的回答。该死,好吧,如果你总是确定偏移量,你可以用一些偏移量来抵消ZoneDateTime。这可能是一个有效的解决方案(某种程度上)。当然,我已经以这种方式意识到了这一点。。。我把时区转换成秒,然后用秒加秒的方法来补偿损失的小时数。我只是觉得有更好的方法可以做到这一点,使用弹簧或其他配件