一、概述
本贴旨在记录本人在前端调用spring boot后台接口时遇到的400,500等错误的产生原因和本人的解决方法。注意,本文提到的每个错误的原因都不唯一,解决方法也各不相同,仅供参考。
二、各种错误详情
1. 400
错误返回值
{
"timestamp": "2021-07-22T01:47:38.395+00:00",
"status": 400,
"error": "Bad Request",
"path": "/wx/repair"
}
错误原因
- 缺少请求参数
- 请求参数与接口所需参数类型不同(例如接口需要int但请求参数是字符串)
解决方法
请求参数的个数和类型,确保参数数量和类型与接口要求相同。
2. 404
错误返回值
{
"timestamp": "2021-07-22T01:53:51.757+00:00",
"status": 404,
"error": "Not Found",
"path": "/wx/repairw"
}
错误原因
接口不存在,即接口请求url写错了。
解决方法
检查请求url,并改正。
3. 405
错误返回值
{
"timestamp": "2021-07-22T01:55:19.279+00:00",
"status": 405,
"error": "Method Not Allowed",
"path": "/wx/repair"
}
错误原因
请求方法错误,例如应该使用GET但错用了POST
解决方法
使用正确的请求方法
4. 500
错误返回值
{
"timestamp": "2021-07-21T06:51:07.823+00:00",
"status": 500,
"error": "Internal Server Error",
"path": "/wx/repair"
}
错误原因
500错误的原因有很多,可能是程序bug,可能是数据库连接错误,具体原因一般需要查看日志或者控制台打印的内容判断。这里描述一个我遇到过的错误:
org.apache.tomcat.util.http.fileupload.FileUploadException: the request was rejected because no multipart boundary was found
看错误描述似乎是与文件上传有关。但请求的接口不需要文件,请求也没有上传文件。经过网上查阅资料,是请求content-type问题,把content-type改成json就行了。
三、总结
总之,遇到各种错误要仔细排查错误原因,可以上网查找解决方法。在编写程序的时候要细心,这样才能尽可能减少各种错误的发生。