JSON 解析错误:意外字符 ('<' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null');

问题描述 投票:0回答:3

需求是使用Web服务并保存在数据库中。 我用

Resttemplate
编写了一个独立的类并且它有效。 我使用相同的url和相同的身份验证机制+ spring boot,在tomcat上部署war,然后当我点击端点(调用web服务来获取json输出)时,它会抛出异常。

There was an unexpected error (type=Bad Request, status=400).

JSON parse error: Unexpected character ('<' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null'); nested exception is com.fasterxml.jackson.core.JsonParseException: Unexpected character ('<' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null') at [Source: java.io.PushbackInputStream@4be06322; line: 1, column: 2]

有人可以帮忙吗?

谢谢。

json resttemplate
3个回答
1
投票

我多次遇到此错误,结果发现我返回的是 HTML 而不是 JSON(因此出现

<
字符错误)。

要修复此问题,您需要检查响应是 JSON 还是 HTML 以避免解析错误。


0
投票

正如您在评论中已经说过的,您的解析器抱怨“<' character, was that the webservice returned HTML instead of JSON.

”的原因

0
投票

这对我没有多大帮助。当我下载库时,我的 IDE 1.x 报告此错误。据说有问题的文件 - package_adelino_index.json - 是一个 html 文件,正如其标头

<!DOCTYPE html>
所证实的那样。错误是第 1 行在第 2 列中有一个意外的
>
。第一行是标题,没有第二列,也没有任何可能被误认为字段或列描述符的字符。它也没有多余的“>”(或像 html 中那样的标记右括号)。 IDE 报告库已更新,显示库文件已安装,即使 IDE 告诉您它已跳过 .json 文件,浪费了故障排除时间。不知道是否已更新,因为还有一百万个其他原因为什么你的 IDE 草图验证在现实世界中不起作用。

© www.soinside.com 2019 - 2024. All rights reserved.