【HTTP】---- 状态码

【HTTP】-------- 状态码

状态码类别

类别原因短语
1XXinformational(信息性状态码)接收的请求正在处理
2XXSuccess(成功状态码)请求正常处理完毕
3XXRedirection(重定向状态码)需要进行附加操作以完成请求
4XXClient Error(客户端错误状态码)服务器无法处理请求
5XXServer Error(服务器错误状态码)服务器处理请求出错

常见状态码详解

  • 200:表示响应成功

  • 301:客户端跳转,永久性跳转

为了实现301永久性跳转,需要在servlet加入如下代码

response.setStatus(301);
response.setHeader("Location", "http://www.baidu.com");

效果演示

再次请求效果,对比两次Status Code字段,说明301永久重定向 缓存了该资源

  • 302:客户端跳转,临时跳转
    注意需要去掉上面的代码,改为response.sendRedirect("http://www.baidu.com");

    效果演示

301和302状态码的区别
(1) 对于301的请求,浏览器默认会给一个很长的缓存,而302的请求是不缓存的
(2) 302转向可能会有URL规范化及网址劫持的问题。可能被搜索引擎判为可疑转向,甚至认为是作弊。

例子说明:张三在自己的网址A做一个302重定向到李四的网址B,由于某种原因,Google搜索结果所显示的仍然是网址A,但是所用的网页内容却是李四的网址B上的内容,这种情况就叫做网址URL劫持。李四网址内容被张三偷走了。
因此,301好处是:
1.没有网址规范化的问题
2.张三的网页A的PR网页级别会传到网页B

  • 400:请求报文存在语法错误
    例子:前端发送表单数据时,如果参数名称无法与entity层的实体类对应上,就可能报400(Bad Request)错误啦
    后续会在回顾ssm框架的时候,补上代码进行解释说明,这里的400常发生在ssm框架中
  • 404:访问的页面不存在
    服务器上无法找到请求的资源,除此之外,也可以在服务器端拒绝请求且不想说明理由时使用
  • 500:服务端错误
    服务端在执行请求时发生了错误,也有可能是Web应用存在的bug或某些临时的故障

============================================================

  • 其它状态码平时在项目中挺少遇到的,自己还是学的不够多吧。发现缓存这一块还是有很多要挖掘的地方,后续会继续恶补知识点。
  • 第一次写博客,好多内容不足啊,后续会在学习的过程中的进行更改和补充的~~
  • 发现很多东西需要自己敲一遍,印象才更深刻~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值