@RequestBody axios post请求400 bad request

本文讨论了在前端axios发送JSON数据到后台时遇到的日期格式问题,导致的状态码400错误。解决方案是将日期格式从'2022-04-01 11:11:12'更改为'2022-04-01T11:11:12',或者调整后台实体类中日期字段的格式。同时提到了时间区问题及其解决办法,使用@JsonFormat和@DateTimeFormat注解来确保日期时间的一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

axios({
url: “api/tbDataCollect/dataCollect”,
method: “post”,
dataType: “json”,
data: {
datetime: “2022-04-01 11:11:12”,
factory: “”,
id: 0,
lossImgPath: “”,
lossNum: 0,
lossSamplingNum: 0,
misjudgeAoiNum: 0,
misjudgeFakeDefectNum: 0,
misjudgeNum: 0,
misjudgeSamplingNum: 0,
misjudgeSmudgeNum: 0,
misjudgeSpecificateNum: 0,
model: “”,
number: 0,
okNum: 0,
totalNum: 0,
}, //,
// data: bookPage,
headers: {
“Content-Type”: “application/json”, //;charset=utf-8
// ‘Content-Type’: “application/x-www-form-urlencoded;charset=utf-8”
},
withCredentials: true,
}).then((object) => {
console.log(object.data)
})
这样发送到后台会显示bad request 状态码400
问题在于datetime参数,后台用的实体类中datetime参数有固定格式
默认情况下把上面的 datetime: “2022-04-01 11:11:12”,改为
datetime: "2022-04-01T11:11:12"就好了.
或者改下后台的datetime格式
@requestbody接收json参数 映射到 实体类中 Date(时间日期)类型转换问题
app在传输Date类型数据时,与后台接收有8小时时间差
@JsonFormat(pattern=“yyyy-MM-dd HH:mm:ss”,timezone=“GMT+8”)
@DateTimeFormat(pattern=“yyyy-MM-dd HH:mm:ss”)
private Date datetime;
timezone主要解决“8小时”问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值