关于http

什么是Http协议?
客户端和 服务器端之间数据传输的格式规范,格式简称为“超文本传输协议”。

什么是Http协议无状态协议?怎么解决Http协议无状态协议?
1、无状态协议对于事务处理没有记忆能力。缺少状态,这就意味着如果后续处理需要前面的信息要重新请求,
2、无状态协议解决办法: 通过1、Cookie 2、通过Session会话保存。
3、说一下Http协议中302状态
http协议中,返回状态码302表示重定向。
这种情况下,服务器返回的头部信息中会包含一个 Location 字段,内容是重定向到的url

Http协议有那些特征?
1、支持客户/服务器模式;2、简单快速;3、灵活;4、无连接;5、无状态;


http的状态码:
所有 HTTP 状态代码及其定义。 
 代码  指示  
2xx  成功  
200  正常;请求已完成。  
201  正常;紧接 POST 命令。  
202  正常;已接受用于处理,但处理尚未完成。  
203  正常;部分信息 — 返回的信息只是一部分。  
204  正常;无响应 — 已接收请求,但不存在要回送的信息。  
3xx  重定向  
301  已移动 — 请求的数据具有新的位置且更改是永久的。  
302  已找到 — 请求的数据临时具有不同 URI。  
303  请参阅其它 — 可在另一 URI 下找到对请求的响应,且应使用 GET 方法检索此响应。  
304  未修改 — 未按预期修改文档。  
305  使用代理 — 必须通过位置字段中提供的代理来访问请求的资源。  
306  未使用 — 不再使用;保留此代码以便将来使用。  
4xx  客户机中出现的错误  
400  错误请求 — 请求中有语法问题,或不能满足请求。  
401  未授权 — 未授权客户机访问数据。  
402  需要付款 — 表示计费系统已有效。  
403  禁止 — 即使有授权也不需要访问。  
404  找不到 — 服务器找不到给定的资源;文档不存在。  
407  代理认证请求 — 客户机首先必须使用代理认证自身。  
415  介质类型不受支持 — 服务器拒绝服务请求,因为不支持请求实体的格式。  
5xx  服务器中出现的错误  
500  内部错误 — 因为意外情况,服务器不能完成请求。  
501  未执行 — 服务器不支持请求的工具。  
502  错误网关 — 服务器接收到来自上游服务器的无效响应。  
503  无法获得服务 — 由于临时过载或维护,服务器无法处理请求。
-----------------------------------------------------------------------------------------------------------------------
HTTP 400 - 请求无效 
HTTP 401.1 - 未授权:登录失败 
HTTP 401.2 - 未授权:服务器配置问题导致登录失败 
HTTP 401.3 - ACL 禁止访问资源 
HTTP 401.4 - 未授权:授权被筛选器拒绝 
HTTP 401.5 - 未授权:ISAPI 或 CGI 授权失败  
HTTP 403 - 禁止访问 
HTTP 403 - 对 Internet 服务管理器 (HTML) 的访问仅限于 Localhost 
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 - 禁止访问:客户证书已经到期或者尚未生效 
HTTP 404.1 - 无法找到 Web 站点 
HTTP 404 - 无法找到文件 
HTTP 405 - 资源被禁止 
HTTP 406 - 无法接受 
HTTP 407 - 要求代理身份验证 
HTTP 410 - 永远不可用 
HTTP 412 - 先决条件失败 
HTTP 414 - 请求 - URI 太长 
HTTP 500 - 内部服务器错误 
HTTP 500.100 - 内部服务器错误 - ASP 错误 
HTTP 500-11 服务器关闭 
HTTP 500-12 应用程序重新启动 
HTTP 500-13 - 服务器太忙 
HTTP 500-14 - 应用程序无效 
HTTP 500-15 - 不允许请求 global.asa 
Error 501 - 未实现 
HTTP 502 - 网关错误 

http的三次握手
所谓的三次握手,即对每次发送的数据量是怎样跟踪进行协商是数据段的发送和接收同步,根据接收到的数据量而确定的数据确认数及数据发送、接收完毕后何时撤销联系、并建立虚连接
TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
(1)第一次握手:建立连接时,第三方应用端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认,
(2)第二次握手:服务器B收到SYN包,必须确认第三方应用A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN=ACK包,此时服务器B 进入SYN_RECV状态,
(3)第三次握手:第三方应用端A收到服务器B的SYN+ACK包,向服务器B发送确认包ACK(ACK=k+1),此包发送完毕,第三方应用端A和服务器B进入ESTABLISHEO状态,完成三次握手
完成三次握手,第三方应用端向服务器开始传送数据

http协议
http是属于应用层的面向对象的协议,由于其简洁、快速的方式,适用于分布式超媒体信息系统
http协议的主要特点:
1、支持客户/服务器模式
2、简单快速:客户向服务器发送请求时只需传送请求方式和路径,请求方法常用:get、post、head。每种方法设定了可客户与服务器联系的类型不同,由于http协议简单,使得http服务器的程序规模小,因而通信速度快,
3、灵活:http允许传输任意类型的数据对象,正在传输的类型由Content_Type加以标记
4、无连接:无连接的含义是限制每次连接只处理一个请求,服务器处理完客户的请求,并收到客户的应答后,即断开连接,采用这种方式可以节省传输时间
5、无状态:http协议是无状态协议,无状态协议是指协议对于事物处理没有记忆能力,缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大,另一方面,在服务器不需要先前信息时它的应答就较快

get和post的区别
1、get是从服务器上获取数据,post是向服务器传送数据
2、get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到,post是通过http post机制,将表单中各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址,用户看不到这个过程
3、get传送的数据量小,不能大于2KB,post传送的数据量大,一般被默认为不受限制。
4、get安全性低,post安全性高。但是执行效率却比post方法好


关于http的六种请求方式:
GET: 用于请求访问已经被URI(统一资源标识符)识别的资源,可以通过URL传参给服务器。
POST:用于传输信息给服务器,主要功能与GET方法类似,但一般推荐使用POST方式。(传输位置由服务器决定)
PUT: 传输文件,报文主体中包含文件内容,保存到对应URI位置。(传输到指定位置)
HEAD: 获得报文首部,与GET方法类似,只是不返回报文主体,一般用于验证URI是否有效。
DELETE:删除文件,与PUT方法相反,删除对应URI位置的文件。
OPTIONS:查询相应URI支持的HTTP方法

HTTP请求报文与响应报文格式
请求报文包含三部分:
a、请求行:包含请求方法、URI、HTTP版本信息
b、请求首部字段
c、请求内容实体
响应报文包含三部分:
a、状态行:包含HTTP版本、状态码、状态码的原因短语
b、响应首部字段
c、响应内容实体

HTTP协议会话过程包括4个步骤:
(1)建立连接:客户端的浏览器向服务端发出建立连接的请求,服务端给出响应就可以建立连接了。
(2)发送请求:客户端按照协议的要求通过连接向服务端发送自己的请求。
(3)给出应答:服务端按照客户端的要求给出应答,把结果(HTML文件)返回给客户端。
(4)关闭连接:客户端接到应答后关闭连接。
HTTP协议是基于TCP/IP之上的协议,它不仅保证正确传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。


















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值