标签:浏览器 Spring boot html API http 错误处理
一.导学
- Spring boot中默认的错误处理机制
- 自定义异常处理
二.spring boot中默认的错误处理机制
- 访问一个不存在的url
http://localhost:8070/xxx
- 浏览器的默认错误如下图所示
- 浏览器的处理(我们先访问正常页面)
http://localhost:8070/user/1
-
获取用户信息的请求,返回的是json格式的用户信息
-
我们再访问不存在的url 看看浏览器是怎么处理的
总结:浏览器发的时候响应是一段html,客户端发的时候是一段json。Spring boot默认处理机制,它会判断当前请求是浏览器发的还是客户端发送的,根据不同请求有不同的处理 -
我们来看看源码是怎么操作的
-
在BasicErrorController 这个类(Spring boot内部错误处理的控制器)
- 有两个RequstMapping
- 区别在于请求头中有没有text/html参数
- ResponseBody注解 把map转换成json
- 浏览器请求头第一个就是text/html
- 而客户端并不含有text/html
- restfull api 是通过http状态码返回不同的场景,所以这里status是404.而且请求响应状态也是404,自己在设计的时候可以参考这个思想
- 还有一个提示信息 “No message available” 404 状态就是没有找到可处理的路径,没有可用的信息也符合解释
- 但是在实际开发中,只是凭借http状态码的话,是不能解决实际场景中的需求的
- 比如创建用户信息,缺少字段,需要返回哪一个字段缺少
三.自定义错误处理
- 自定义浏览器错误处理
待写中…
标签:浏览器,Spring,boot,html,API,http,错误处理 来源: https://blog.csdn.net/qq_33248299/article/details/89636297
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。