我正在用主体向http://localhost:8080/date
发送Http POST请求
{
"localDateTime": "2021-06-08T11:39:01"
}
(我尝试了多种不同的时间格式,总是出现相同的错误(到我用Spring Boot构建的Java应用程序。
@RestController
public class Controller {
@PostMapping(path ="/date",consumes="application/json",produces="application/json")
public String dateTime(@RequestParam(name = "localDateTime")
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDateTime localDateTime) {
return localDateTime.toString();
}
}
我知道Spring Boot有点棘手,但我读到@DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)
注释应该允许它正确地将Strings转换为日期对象。
相反,我得到了400 Bad Request
错误。怎么了?
请删除consumes="application/json", produces="application/json"
,您已经在使用RestController注释。
如果要将JSON作为Body发送,请将@RequestParam更改为@RequestBody。对/date?localDateTime=2021-06-08T11:39:01
使用@RequestParam。
@RequestBody和@RequestParam之间有什么区别?