HTTP协议介绍

一.HTTP介绍

HTTP:超文本传输协议,是Web联网的基础

作用:从服务器传输html到本地浏览器的传输协议

版本:HTTP 0.9/1.0/1.1

特点:无状态,无连接,基于TCP

二.HTTP组成

1.请求报文:请求行+报文头+空行 +报文体

 

(1)请求行:

①请求方法

GET

通常用于请求服务器发送某个资源

POST

用于向服务端提交数据,有主体

HEAD

请求一个资源,但是不需要服务器发送资源而仅传回响应的首部信息

PUT

向服务器写入文档;例如发布系统

DELETE

请求删除URL指向的资源

OPTIONS

用于查询服务端支持的请求方法

TRACE

跟踪请求资源传输所经过防火墙、代理或网关等

CONNECT

HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器

其他

LOCK;COPY;MOVE

GET与POST区别

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

               1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用

                     Post数据提交方式;

               2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除

                     时,建议用Post方式;

②URL地址

URI:统一资源标识符 (包括URL,URI)

URL:统一资源定位符

URN:统一资源名

格式:<协议>://<主机>:<端口>/<路径>

③协议名称或版本号

HTTP 0.9/1.0/1.1

(2)报文头:HTTP报文头包含若干属性,格式“属性名:属性值”,服务端据此获取客户端的信息

请求字段:

Host:请求资源的主机和端口号

Accept:通过accept属性告诉服务器 客户端可以接受什么类型的响应。 如: Accept:text/plain

Accept-Charset:浏览器采用的是哪种编码

Accept-Encoding:浏览器支持解码的数据压缩格式

Cookie:客户端通过Cookie传给服务端

Referer:表示这个请求是从哪个url过来的(上一个 页面)

User-Agent:浏览器的具体类型

Cache-Control:对缓存进行控制

connection:连接的管理

DATE:创建报文的日期时间

(3)报文体:向HTTP要传输的数据内容

 

2.响应报文:响应行+响应头+空行+响应体

 

(1)响应行

①报文协议及版本

②状态码及状态描述

状态码:

信息性状态码:100~199

成功状态码:200~299

重定向状态码:300~399

客户端错误状态码:400~499

服务端错误状态码:500~599

 

常见状态码:

200:客户端请求成功

204:请求成功,但没有资源返回

206:客户端进行了范围请求

301:临时性重定向

302:永久性重定向

304:服务器资源未改变,可直接使用未过期的缓存

401:该状态码表示需要通过HTTP认证

403:请求访问的资源服务器拒绝

404:服务器没有资源

500:服务器内部错误

503:服务器当前不能处理客户端的请求

(2)响应头:多个属性组成

属性:

server:服务器所使用的Web服务器名称

Allow:通知客户端能够支持的HTTP方法

Content-Location:给出与报文主体部分相对于实际的URL

Location:引导用户转向与请求URL不同的资源301 302

ETag:代表响应服务端资源版本的报文头属性

Content-Type:响应正文的类型

Set-Cookie:服务端可以设置客户端的Cookie

Cache-Control:对缓存进行控制

connection:连接的管理

DATE:创建报文的日期时间

(3)响应体:http响应的数据内容

 

三.HTTP工作过程

(1)客户端建立TCP连接

(2)发送HTTP请求

(3)服务器接受请求并返回HTTP响应

(4)客户端释放TCP连接

(5)客户端浏览器解析HTML内容

 

 

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值