API报文加密后,调用删除接口,单条记录删除正常,多条记录删除报错。

Blade 未结 2 555
zzjc
zzjc 2023-03-16 16:28

一、该问题的重现步骤是什么?

1. API报文加密后,调用删除接口,单条记录删除正常,多条记录删除报错。

2. 带逗号分隔的字符串,后端解析不出来。

3.


二、你期待的结果是什么?实际看到的又是什么?


三、你正在使用的是什么产品,什么版本?在什么操作系统上?


四、请提供详细的错误堆栈信息,这很重要。

com.fasterxml.jackson.core.JsonParseException: Unexpected character (',' (code 44)): Expected space separating root-level values

 at [Source: (String)"1213132323,984329849328"; line: 1, column: 12]

at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1851)

at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:707)

at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:632)

at com.fasterxml.jackson.core.base.ParserMinimalBase._reportMissingRootWS(ParserMinimalBase.java:679)

at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._verifyRootSpace(ReaderBasedJsonParser.java:1706)

at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._parsePosNumber(ReaderBasedJsonParser.java:1349)

at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:773)

at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4664)

at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4513)

at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3468)

at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3436)

at org.springblade.core.tool.jackson.JsonUtil.readValue(JsonUtil.java:296)

五、若有更多详细信息,请在下面提供。

2条回答
  •  zzjc
    zzjc (楼主)
    2023-03-17 08:12

    后端image.png

    前端

    image.png

    前端请求

    image.png



    当前我的解决办法是,在blade-starter-api-crypto下的ApiDecryptParamResolver类,先判断下是否为字符串,如果为字符串则直接返回,不通过JsonUtil.readValue去读了。代码如下:

    image.png


提交回复