在前两篇文章当中,已经分别介绍了HTTP是什么,以及常见的请求头当中的属性。
【网络原理7】认识HTTP_革凡成圣211的博客-CSDN博客HTTP抓包,Fiddler的使用https://blog.csdn.net/weixin_56738054/article/details/129148515?spm=1001.2014.3001.5502
【网络原理8】HTTP构成篇1_革凡成圣211的博客-CSDN博客HTTP的常见属性,URL,User-Agent,Refer,get 和post的区别https://blog.csdn.net/weixin_56738054/article/details/129180661?spm=1001.2014.3001.5502
下面,继续谈一下HTTP响应头当中有哪些比较常见的属性。
目录
一、HTTP状态码(HTTP响应行当中的内容)
①状态码:200
②状态码:404
③状态码:403
④状态码:405
⑤状态码:500
⑥状态码:504:Gateway Timeout
⑦状态码:302:Move temporarily(重定向)
Location和Refer的区别就在于:
二、HTTP响应"报头"(header)
一、HTTP状态码(HTTP响应行当中的内容)
这一个状态码的含义,也在前两篇文章当中提到了。下面,介绍几个常见的状态码
①状态码:200
状态码显示200,说明浏览器很顺利地获取到想要的内容了,没有出什么bug。
②状态码:404
请求的资源不存在,这个时候就会提示404不存在。
③状态码:403
403提示当前资源存在,但是由于用户的权限不够,因此不可以访问。关于怎样校验权限,目前大部分是使用spring-security来校验权限。
④状态码:405
这个状态码的含义是:Method Not Allowed,这种状态比较少遇到。
例如:当用户使用get访问服务器,但是服务器的接口只支持post。
⑤状态码:500
这个状态码的含义是服务器内部出现错误。
例如在运行的时候出现了异常(Exception),那么就会显示500,也是不那么常见的情况。
⑥状态码:504:Gateway Timeout
指的是服务器当前太繁忙了,来不及响应。
⑦状态码:302:Move temporarily(重定向)
关于请求转发和重定向的区别,会在后续的文章当中讲到。‘
其中,登录跳转就是一个常见的重定向场景。
里面有一个字段,叫做Location:
其中,这一个字段的含义就是:需要跳转的资源在哪里
Location和Refer的区别就在于:
①Refer是HTTP请求头当中的内容,Location是HTTP响应头当中的内容。
②Refer描述的是当前页面是从哪里跳转过来的,而Location描述的是这个请求需要重定向到哪个页面。
服务器的状态码有很多,总结一下:它们大致都有一下特点:
状态码 | 含义 |
2开头 | 表示响应成功 |
3开头 | 重定向 |
4开头 | 客户端出错(请求出错) |
5开头 | 服务器内部出错 |
其中,1和6开头的状态码,都比较少见。
二、HTTP响应"报头"(header)
HTTP响应是由HTTP响应行,HTTP响应头,还有响应的正文一共3部分组成的。
前面我们也提到了:HTTP的响应头是由多组键值对组成的。下面,将来聊一下一个常见的键值对:Content-Type,它描述的是响应的body的格式,有以下几种常见的格式:
1) text/html:返回的是一个html页面
2) text/css:返回的是一个css页面
3) application/javascript:返回的是一个javascript页面
4)application/json:返回的是一串json格式的字符串