HTTP协议介绍

目录

一、HTTP协议

二、请求的协议格式

1、请求的HTTP协议格式

2、响应的HTTP协议格式

3、Get请求格式协议

4、POST请求协议格式

三、常见请求头说明

四、get请求和post请求

1、Get请求

2、POST请求

五、响应码介绍

1XX 接受信息正在处理

2XX 正常处理完毕

3XX 附加操作

4XX 无法处理

5XX 请求出错

六、常见的http响应状态码


一、HTTP协议

1、HTTP(hypertext transport proticol)——超文本传输协议

这个协议详细规定了浏览器和万维网服务器之间互相通信的规则

2、客户端于服务端通信时传输的内容我们称之为报文。

3、HTTP就是一个通信规则这个规则规定了客户端发送给服务器的报文格式,也规定了服务器发给客户端的报文格式

我们所学习的就是这两种报文。

客户端发送给服务器的称为“请求报文

服务器发送给客户端的成为“响应报文

其实我们所谓的协议,就是双方相互约定好的规则

比如工作协议:工作协议就是员工与老板之间相互约定好的租房规则。

二、请求的协议格式

1、请求的HTTP协议格式

请求行

请求头

空行

请求体

2、响应的HTTP协议格式

响应首行

响应头信息

空行

响应体

3、Get请求格式协议

get请求没有请求体

4、POST请求协议格式

三、常见请求头说明

1、

GET /Hello/index.jsp HTTP/1.1

GET请求,请求服务器资源的路径 Hello/index.jsp,  协议为http   版本为1.1;

2、

Host:localhost

请求的主机名为localhost;

3、

User-Agent

Mozilla/4.0 (compatible; MSIE 8.0…

与浏览器和OS相关的信息。有些网站会显示用户的系统版本和浏览器版本信息,这都是通过获取User-Agent头信息而来的;

4、

Accept: */*

告诉服务器,当前客户端可以接收的数据类型, */*,就表示什么都可以接收;

5、

Accept-Language: zh-CN

当前客户端支持的语言,可以在浏览器的工具选项中找到语言相关信息;

6、

Accept-Encoding: gzip, deflate

支持的压缩格式。数据在网络上传递时,可能服务器会把数据压缩后再发送;

7、

Connection: keep-alive

客户端支持的链接方式,保持一段时间链接,默认为3000ms;

四、get请求和post请求

1、Get请求

1、在浏览器地址栏输入地址,直接按回车

2、点击<a>超链接

3、GET请求 表单提交

4、Script src=“”——引入外部文件

5、img src=“路径”——引入图片

6、引入外部CSS

2、POST请求

只有在表达提交的时候method=post,提交表单就是发post请求

五、响应码介绍

响应码对浏览器i来说很重要,它告诉浏览器响应的结果。

1XX 接受信息正在处理

指示信息——表示请求已接收,继续处理

2XX 正常处理完毕

成功——表示请求已被成功接受、理解、接受

  • 200:200 ok 请求成功,浏览器会把响应体内容(通常是html)显示在浏览器中

3XX 附加操作

重定向——信息不完整需要进一步补充

  • 302:请求重定向,当响应码为302时,表示服务器要求浏览器重新再发一个请求,服务器会发送一个响应头Location,它指定了新请求的URL地址

4XX 无法处理

客户端错误——请求有语法错误或请求无法实现

  • 404:请求的资源没有找到,说明客户端错误的请求了不存在的资源

5XX 请求出错

服务器端错误——服务器未能实现合法的请求

  • 500:请求资源找到了,单服务器内部出现了错误

六、常见的http响应状态码

请求收到,继续处理:
        100 客户端必须继续发出请求
        101 客户端要求服务器根据请求转换HTTP协议版本

 操作成功收到,分析,接受:
        200      交易成功
        201      提示知道新文件的URL
        202      接受和处理、但处理未完成
        203      返回信息不确定或不完整
        204      请求收到,但返回信息为空
        205      服务器完成了请求,用户代理必须复位当前已经浏览过的文件
        206      服务器已经完成了部分用户的GET请求

 重定向:
        300      请求的资源可在多处得到
        301      永久重定向,在Location响应首部的值仍为当前URL(隐式重定向)
        302      临时重定向,在Location响应首部的值仍为新的URL(显示重定向)
        303      建议客户端访问其他URL或访问方式
        304      Not Modified 请求的资源没有改变 可以继续使用缓存
        305      请求的资源必须从服务器指定的地址得到
        306      前一版本HTTP中使用的代码,现行版本中不再使用
        307      声明请求的资源临时性删除

 客户端错误:
        400      错误请求,如语法错误
        401      未授权
           HTTP 401.1    未授权,登录失败
           HTTP 401.2    未授权,服务器配置问题导致登录失败
           HTTP 401.3    ACL  禁止访问资源
           HTTP 401.4    未授权  授权被筛选器拒绝
           HTTP 401.5    未授权  ISAPI或CGI授权失败
        402      保留有效ChargeTo头响应
        403      禁止访问
           HTTP 403.1    禁止访问  禁止可执行访问
           HTTP 403.2    禁止访问  禁止读访问
           HTTP 403.3    禁止访问  禁止写访问
           HTTP 403.4    禁止访问  要求SSL
           HTTP 403.5    禁止访问  要求SSL 128
           HTTP 403.6    禁止访问  IP地址被拒绝
           HTTP 403.7    禁止访问  要求客户端证书
           HTTP 403.8    禁止访问  禁止站点访问
           HTTP 403.9    禁止访问  连接的用户过多
           HTTP 403.10   禁止访问  配置无效
           HTTP 403.11   禁止访问  密码更改
           HTTP 403.12   禁止访问  映射器拒绝访问
           HTTP 403.13   禁止访问  客户端证书已被吊销
           HTTP 403.15   禁止访问  客户端访问许可过多
           HTTP 403.16   禁止访问  客户端证书不可信或者无效
           HTTP 403.17   禁止访问  客户端证书已经到期或者尚未生效
        404       没有发现文件、查询或URL
        405       用户在Request-Line字段定义的方法不允许
        406       根据用户发送的Accept拖,请求资源不可访问
        407       类似401,用户必须首先在代理服务器上得到授权
        408       客户端没有在用户指定的饿时间内完成请求
        409       对当前资源状态,请求不能完成
        410       服务器上不再有此资源且无进一步的参考地址
        411       服务器拒绝用户定义的Content-Length属性请求   
        412       一个或多个请求头字段在当前请求中错误
        413       请求的资源大于服务器允许的大小
        414       请求的资源URL长于服务器允许的长度
        415       请求资源不支持请求项目格式
        416       请求中包含Range请求头字段,在当前请求资源范围内没有range指示值,       请求也不包含If-Range请求头字段
        417       服务器不满足请求Expect头字段指定的期望值,如果是代理服务器,可能是下一级服务器不能满足请求长
 服务器端错误: 
        500 - 内部服务器错误
           HTTP 500.100 - 内部服务器错误 
           HTTP 500-11 服务器关闭
           HTTP 500-12 应用程序重新启动
           HTTP 500-13 - 服务器太忙
           HTTP 500-14 - 应用程序无效
           HTTP 500-15 - 不允许请求 
        501 - 未实现
        502 - 网关错误
        503 - 服务不可用
		504 - 网关超时
		参考:
		[Apache之HTTP协议](https://blog.51cto.com/shjia/1432670)

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值