HTTP深入浅出个人总结

http遵循request/response模型

基本流程:web浏览器向web服务器发送请求,web服务器处理请求并回应web浏览器

具体步骤:

1、建立tcp连接

web浏览器通过网络(internet又称TCP/IP网络)和web服务器建立连接,

低层的协议建立之后才能进行更高层协议(HTTP是比TCP更高层的应用层协议)

一般的TCP端口为80

2、web浏览器向web服务器发送请求命令

3、web浏览器发送头信息

以头信息的形式向web服务器发送别的信息,之后发送一空白行,通知服务器结束该头文件的发送

4、web服务器回应

如:HTTP/1.1 200 ok

HTTP/1.1是协议的版本号 200是应答状态码

5、web服务器发送应答头信息

服务器随同应答向用户发送关于它自己的数据和被请求文档

6、web服务器向浏览器发送数据

发送头信息它会发送一个空白行来表示头信息发送到此结束

7、关闭TCP连接

web服务器向web浏览器发送了就要关闭

如果加入connection:keep-aliveTCP将仍保持打开状态,保持连接状态能够节省时间和网络带宽


请求信息3部分:

  1. 请求方法/URL协议/版本

  2. 请求头 

  3. 请求正文

例子:

下面是一个HTTP请求的例子:

GET/sample.jspHTTP/1.1   (1)

Accept:image/gif.image/jpeg,*/*

Accept-Language:zh-cn

Connection:Keep-Alive

Host:localhost

User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)

Accept-Encoding:gzip,deflate     (2)

 /* 表示结束的空白行   */

username=jinqiao&password=1234    ​(3)


总结:

客户端完整的发送一个请求(请求头+请求体)服务器收到这个信息并处理完成后返回一个响应包HTTP应答,然后连接关闭;

客户端发送请求是一次把请求头和请求体全部发出;

浏览器会根据你在地址栏里输入的url进行DNS解析;

服务器使用常见apache+tomato进行处理,apache用来接收HTTP应答,然后请求给tomato进行处理;

建立TCP连接是在地址栏输入完地址敲下回车后,浏览器有一个DNS解析过程,将域名转成IP然后浏览器根据IP加上默认的80端口建立好TCP连接;

HTTP请求的信息头 \r\n和包体都是一起发送的。

读取相关方法:

HEAD  类似于GET不返回body信息,检查对象是否存在

GET  通过URL得到资源

POST  用于添加新内容

OPTIONS 询问执行那些方法

PROPFIND 查看属性

修改相关方法:

MKCOL  创建集合(文件)

PUT  修改某个内容

DELETE 删除弄个内容

UNLOCK 解锁

LOCK

COPY 复制

MOVE 移动

PROPRAICH 设置属性



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值