计算机网络-http

HTTP:超文本传输协议

定义了浏览器(万维网客户进程)怎样向万维网服务器请求文档,以及服务器怎样把文档传送给浏览器(本身不算一种连接,相当于是形式的规定)

使用TCP作为支撑运输协议。一旦建立好TCP连接,就可以通过套接字接口访问TCP。(套接字:IP:端口号,应用层与传输层之间的接口)(上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口)

服务器进程监听TCP的端口80,以便发现是否有客户请求服务。一旦监听到了连接建立请求,并且与客户建立好了TCP连接后(TCP连接是传输层),浏览器就可以开始发出浏览界面的请求,发送http请求报文,请求相关的文档。服务器收到请求报文后,把资源以文档的形式放到http响应报文中,返回给客户。之后就可以释放TCP连接


具体过程

1、浏览器分析URL,本地host文件有的话就直接解析了

2、浏览器向DNS请求解析IP地址

3、DNS解析出IP地址

4、浏览器与服务器建立TCP连接(传输层,三次握手建立连接)(第三次握手可以发送http请求报文,作为第三次握手的数据发送给服务器)。(!先建立TCP连接后才能发HTTP请求

​ 客户端向服务器发送http请求报文。

5、浏览器发出取文件命令(http请求报文

6、服务器响应(http响应报文

7、释放TCP连接

8、浏览器显示


特点

  • http协议是无状态的:同一个客户第二次访问的时候响应是相同的(协议本身)(就不知道是哪个客户)

  • http协议采用TCP作为运输层协议,但http协议本身是无连接的(通信双方在交换http报文之前不需要先建立http连接,但是得建立TCP连接)(其实就是一个请求和响应)

http连接方式:持久连接(非流水线式、流水线式)、非持久连接

  • 非持久:之前的连接会断掉,再次请求得重新建立TCP连接

  • 持久:再次请求就不需要再建立TCP连接,在之前建立的连接的基础上继续请求服务器发送响应后的一段时间内仍保持连接

    • 非流水线式:发一个请求,得一个响应,再发一个新的
    • 流水线式:可以连续发送,服务器就依次返回,使TCP连接的空闲时间少

Cookie、Session、Token

Web应用程序是使用HTTP协议传输数据的。HTTP 是无连接无状态的,无法从连接上跟踪会话。

会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话

常用的会话跟踪技术是Cookie与Session,都是用来记录信息确定用户身份的

Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。


Cookie

  • Cookie由服务器生成,发送给浏览器,下一次请求同一网站时会把该Cookie发送给服务器。

  • Cookie 技术通过在请求和响应报文中写入 Cookie 信息来控制客户端的状态。响应报文里Set-Cookie的首部字段信息通知客户端保存Cookie。下次客户端再往该服务器发送请求时,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值