Postman请求JSON含自动反斜杠致OffsetDateTime反序列化失败排查
问题分析:Postman请求时间戳反序列化失败原因
问题现象
- Postman请求中的时间戳字段显示为:
"startDate":"2023-03-15T00:00:00",发送时被自动添加反斜杠转义 - 调用API后收到反序列化错误:
Can not deserialize value of type java.time.OffsetDateTime from String "2023-03-15T00:00:00": Text '2023-03-15T00:00:00' could not be parsed at index 19
at [Source: java.io.PushbackInputStream@62d24954; line: 7, column: 17] (through reference chain: com.abc.request.OneRequest["startDate"])
根本原因
- 时间格式不匹配后端类型要求:后端接口的
startDate字段定义为java.time.OffsetDateTime类型,该类型强制要求时间字符串包含时区偏移信息(例如2023-03-15T00:00:00+08:00或2023-03-15T00:00:00Z),但你传入的2023-03-15T00:00:00没有时区偏移,导致Jackson序列化库无法完成解析,错误提示里的index 19指向字符串末尾,正是找不到时区信息的位置。 - Postman反斜杠为显示转义:你看到的反斜杠只是Postman对JSON字符串的显示转义,并非实际发送给后端的内容,这个转义不是报错的核心原因,只是干扰项。
内容的提问来源于stack exchange,提问作者Eric
相关产品推荐
相关产品推荐

