JSON parse error: Unexpected end-of-input: ... PushbackInputStream ... JsonEOFException

错误异常信息:

JSON parse error: Unexpected end-of-input: expected close marker for Object (start marker at [Source: (PushbackInputStream); line: 1, column: 1]); nested exception is com.fasterxml.jackson.core.io.JsonEOFException: Unexpected end-of-input: expected close marker for Object (start marker at [Source: (PushbackInputStream); line: 1, column: 1])\n at [Source: (PushbackInputStream); line: 1, column: 3]


错误定位:

这是一个json不完整,格式异常的错误信息。排查步骤:

1.判断body中的json格式是否正确,可以使用 http://www.bejson.com/jsoneditoronline/ 进行格式校验,其实postman也可以校验,如果不正确,会自动提示。

2.如果json格式是正确的,再次查看请求头中是否包含Content-Length,如果包含的话,可能就是这个值有问题,把这个Content-Length从请求头中删除掉。

我这里是第二个,因为请求头是抓包中拷贝的,但是我在postman中调试的时候,改变了body中的值,导致Content-Length变化了,但是请求头中的Content-Length并没有变化,故而报此错误。如果body中的长度大于Content-Length将会截取body导致json格式异常;如果body中的长度小于Content-Length将会导致请求超时。所以,请求头中去掉就好了,它会自动添加。

Good Luck.

上一篇:springboot的页面出现Whitelabel Error Page


下一篇:pycharm意外关闭导致报错Unexpected content storage modification: page=26; newRecord=3877