HTTP 笔记

基本的浏览器连接处理
  1. 浏览器从URL中解析出服务器主机名
  2. 浏览器将服务器主机名转换为对应的IP地址
  3. 浏览器从URL中解析出端口号
  4. 浏览器建立一条与web服务器的TCP(传输控制协议)连接
  5. 浏览器向服务器发送一条HTTP请求报文
  6. 服务器向浏览器回送一条HTTP响应报文
  7. 关闭连接,浏览器像是文档
HTTP网络协议栈

TCP

传输控制协议,规定了数据是如何从一个地方发送到另一个地方的。

TCP主要提供了

      1. 无差错的数据传输
      2. 按序传输(数据总是会按照发送时的顺序到达)
      3. 未分段的数据流(可以在任意时刻以任意尺寸将数据发送出去)

只要建立了TCP连接,客户端和服务器端就之间的数据交换就不会丢失,不会错序。


web的结构组件

代理:位于客户端和服务器端之间的中间实体。接收客户端的所有HTTP请求,将这些请求转发给服务器(可能会修改请求)。

可以对请求或响应进行过滤(对下载的程序进行病毒检测,屏蔽一些黄暴的内容等)。

缓存

网关:通常用于将HTTP数据转换为其他其他的协议。

三次握手

为了准确无误的将数据送达,TCP协议采用了三次握手策略


HTTP状态码

HTTP状态码负责表示客户端HTTP请求的返回结果、标记服务器端的处理是否正常、通知出现的错误等。

 类别原因短语
1xx信息性状态码   接收的请求正在处理    
2xx成功状态码请求正常处理完毕
3xx重定向状态码需要进行附加操作以完成请求
4xx客户端错误状态码服务器无法处理请求
5xx服务器错误状态码服务器处理请求出错
  • 200,OK,请求已正常处理
  • 204,请求已处理但没有资源可返回
  • 301,请求的资源已经被分配了新的URI
  • 302,临时重定向(请求的资源临时被分配了新的URI)
  • 401,发送的请求未经过认证(需要通过HTTP认证)
  • 403,不允许访问该资源
  • 404,没有请求的资源
  • 500,服务器端发生错误
  • 503,服务器处于超负载状态或正在停机维修,现在无法处理该请求

HTTP的不足(缺点)

  • 通信使用明文(不加密)可能被窃听或篡改
  • 不验证通信双发的身份,有可能遭遇伪装
HTTPS

HTTP协议中没有加密机制,但是可以通过和SSL(secure socket layer,安全套接层)或者TLS(安全传输层协议,transport layer security)的组合使用,加密HTTP的通信内容

使用SSL建立安全通信路线之后,就可以在这条线路上进行HTTP通信了。

与SSL组合使用的HTTP被称为HTTPS





















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值