使用 APIPost 本地测试报错401状态解决办法:org.springframework.http.converter.HttpMessageNotReadableException: JSON

在尝试从Redis查询并进行数据库双写一致性时遇到401错误,原因是JSON解析异常。报错表明请求参数多于数据库字段。通过检查发现是时间戳格式问题,需包含时区信息。解决方案包括修改Controller请求注解,使用JSON格式化参数,确保只传入需要更新的字段,并在APIPost中添加授权。

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

前言: 实现需求就是先从redis 查询缓冲,缓存与数据库双写一致性需要,如果管理段更新了数据,那么数据库和redis 中的数据都是一致的才对。

还原报错控制台异常日志:

2022-04-04 22:38:36.214 ERROR 14084 — [nio-8081-exec-1] com.hmdp.config.WebExceptionAdvice : org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: raw timestamp (1642066339000) not allowed for java.time.LocalDateTime: need additional information such as an offset or time-zone (see class Javadocs); nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: raw timestamp (1642066339000) not allowed for java.time.LocalDateTime: need additional information such as an offset or time-zone (see class Javadocs)
at [Source: (PushbackInputStream); line: 9, column: 16] (through reference chain: com.hmdp.entity.Shop[“updateTime”])

解释: 大概报错就是说我本地请求的参数 比数据库中的字段多,于是我仔细对了一下,就是比数据库中的多
root@yunxin-ops-tmp2:~# curl -X POST "http://api-in.stone.netease.com/kuafu/api/v3/form/submit?gwClientId=724&gwClientUser=wb.zhangjian17&gwTimestamp=1743562308&gwSignature=e60a5263999917f1cc5fd4337bd2fe85" -H "Content-Type: application/json" -d '{ "processDefId": "申请夸父OpenApi权限:6:150135612", "variables": { "是否需要业务处理恢复": "是", "是否需要发送通知": "是", "故障描述": "music-hadoop-720.gy.ntes", "产品名称": "\"value\":\"猛犸大数据平台\",\"label\":\"猛犸大数据平台\",\"key\":\"猛犸大数据平台\"", "故障部件": "\"硬盘\",\"其他\"", "影响": "理论无影响", "预维修时间": "2025-04-02 11:26:02" "主机名": "music-hadoop-720.gy.ntes" "跟踪者": "ZQ05523" "工单优先级": "普通" }, "user": { "account":"wb.zhangjian17", "jobNumber":"ZQ05523", "mail":"wb.zhangjian17@corp.netease.com", "name":"张建" } }' {"message":"{\"timestamp\":1743574093917,\"status\":400,\"error\":\"Bad Request\",\"exception\":\"org.springframework.http.converter.HttpMessageNotReadableException\",\"message\":\"JSON parse error: Unexpected character ('\\\"' (code 34)): was expecting comma to separate Object entries\\n at [Source: java.io.PushbackInputStream@129296f5; line: 11, column: 10]; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Unexpected character ('\\\"' (code 34)): was expecting comma to separate Object entries\\n at [Source: java.io.PushbackInputStream@129296f5; line: 11, column: 10]\\n at [Source: java.io.PushbackInputStream@129296f5; line: 10, column: 28] (through reference chain: com.netease.opstask.dao.dt.SubmitVariable[\\\"variables\\\"])\",\"path\":\"/api/3.0/form/submit\"}","code":500}
04-03
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值