http协议详解(一)HTTP协议基础

前言

    最近在看一些http的东西,http比较杂,大致整理了一下,用思维导图的方式呈现了出来。我会分几个板块来介绍http协议,具体的板块也在下面的思维导图中标注出来了,尽量以简洁的方式为大家呈现http的内容。初写博客,文中有些纰漏的地方还请大家指点。


模块概述


HTTP协议基础



基本概念

HTTP:超文本传输协议,本质上是一种通信协议。用来将html从服务端传送到客户端。


特点

简单快速:客户向服务器请求服务时,只需传送请求方法和路径。

无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。


Request/Response原理

Request请求头


注:这个是用谷歌浏览器的开发者工具访问百度截获的,访问不同的页面请求头/返回头的内容有些许的不一样。下面介绍的是一些通用的内容。


Request请求头通用的包含以下一些内容:

请求方法/请求文件/协议             GET/960.js/HTTP/1.1

请求地址                                   Host:www.baidu.com

用户信息                                   Useragent:内核、系统、浏览器等信息

可接受返回类型                         Accept:显示可以接收的数据类型

来自页面                                   forward:从哪个页面跳转而来

可接受的编码方式                     Accept-encoding                             

可接受的语言                            Accept-language

是否使用缓存                            if-none-match

最后修改时间                            If-Modifiled-Sine

注:最后两项是http的缓存机制,如果允许使用缓存,并且本地缓存的页面与当前请求的页面的最后修改时间一致,则直接使用本地的缓存文件。


Response返回头


注:chrome浏览器截取的部分头信息,通用部分已经被提取掉了,大家要看详细的返回头信息,可以用专业的抓包工具查看。图片只是单纯作为一个栗子。


协议/状态码                       HTTP/1.1 304

服务器软件信息

生成时间                            Date

文件的最后修改时间           If-Modifiled-sine

ETag                                 #和if-none-match一起使用

缓存过期时间                     Expires

缓存机制

代理连接                            keep-alive

注:代理连接这块,是http1.1的特性,是一个改良。因为http是应用层的协议,基于TCP之上,所以对TCP的优化对HTTP同样管用。Keep-alive就是在一个tcp连接之上允许传输多个http请求,所以当一个tcp连接建立的时候,不会在http请求之后断开,而是保持一段时间。


    本次http为大家简单的介绍了一下直观的部分,剩下的博文比较多,博主会尽快整理上传,大家有兴趣的话可以关注后续的详解。


  • 13
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

桥路丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值