我不确定为什么会发生这种情况。我对spring boot
rest控制器的返回语句如下所示
return ResponseEntity.status(HttpStatus.OK).body("Successfully added");
现在在swagger UI
上,我看到如下响应
can't parse JSON. Raw result:
Successfully added
为什么会发生这种情况?
发布于 2020-05-21 08:52:03
这个游戏很晚了,但我会分享我对这个问题的解决方案,因为它是我最近开发的一个基于Python Flask的REST后端。如果您的问题与我的类似,那么您可以在您的JSON中包含Python值,尽管是在NaN中。
我的基本问题
我也得到了“无法解析JSON”的夸张的一面。事实证明,Python的标准库JSON导入将允许“现代的”但不是官方的json
类型,例如"NaN“。用浮点数和voila...As做一些计算,一个严格的解析器在NaN这样的类型下会失败,值得检查一下你的请求JSON响应中没有这些。
用一个编码器类解决了这个问题
虽然不是特定于Java的答案,但也许我的Python解决方案可以帮助您解决这个问题。
json.dumps(yourdata, cls=NumpyEncoder)
其中NumpyEncoder
是将JSON值转换为NaN
和/或您可接受的规范的类。可能的情况是,您也可以在代码中包含一些编码器类来删除NaN和/或其他工件。
有关Python实现的详细信息,请参阅我的so answer。
https://stackoverflow.com/questions/56977658
复制相似问题