异常: “Unexpected character (‘?‘ (code 239)): was expecting a colon to separate field name and value

项目场景:

在向SpringbootMVC项目发送JSONl类型请求时. 出现的问题以及几种解决思路


问题描述:

向指定的接口发送JSON字符串时, 系统日志中出现下面内容,

Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Unexpected character (‘(code 239)): was expecting a colon to separate field name and value; nested exception is com.fasterxml.jackson.core.JsonParseException: Unexpected character (‘(code 239)): was expecting a colon to separate field name and value
at [Source: (PushbackInputStream); line: 8, column: 8]]


原因分析:

异常主要信息用黑体标出. 由黑体翻译可知: 期望使用冒号分隔属性和值, 因此说明我们用于分隔值的冒号有问题


解决方案:

经仔细检查发现中的冒号使用的是中文字符, 将英文字符换成中文冒号

ps: 在JSON出现问题时, 可以利用csdn的Markdown来验证JSON是否异常

利用Markdown代码块进行JSON校验

  1. ctrl+k 插入代码片, json放入代码片内.
    在左上角将“`后的 java 改成json(代表插入的是json, 会自动做json校验, 如下图)

  2. 观察json显示是否有问题
    可以明显看到该冒号与其他区域冒号不一致(说明是大写字符),改成小写字符即可

    异常: “Unexpected character (‘?‘ (code 239)): was expecting a colon to separate field name and value Python都知道 异常: “Unexpected character (‘?‘ (code 239)): was expecting a colon to separate field name and value 微信公众号 异常: “Unexpected character (‘?‘ (code 239)): was expecting a colon to separate field name and value 回复bbb:java资料,bbb1:python资料,bbb2+vx

    来源:时间静止不是简史

    声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年10月21日
下一篇 2020年10月21日

相关推荐