前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >计算机网络基础:这是一份详细 HTTP 学习指南

计算机网络基础:这是一份详细 HTTP 学习指南

作者头像
Carson.Ho
发布2019-02-22 15:50:06
4300
发布2019-02-22 15:50:06
举报
文章被收录于专栏:Android知识分享

前言

  • 关于计算机网络,HTTP网络通信协议在任何的开发工作中都非常重要
  • 今天,我将献上一份HTTP的学习指南,希望你们会喜欢

目录


1. 储备知识

讲解HTPP协议前,先了解一些基础的计算机网络相关知识

1.1 计算机网络体系结构

  • 定义 计算机网络的各层 + 其协议的集合
  • 作用 定义该计算机网络的所能完成的功能
  • 结构介绍 计算机网络体系结构分为3种:OSI体系结构、TCP / IP体系结构、五层体系结构
    • OSI体系结构:概念清楚 & 理念完整,但复杂 & 不实用
    • TCP / IP体系结构:含了一系列构成互联网基础的网络协议,是Internet的核心协议 & 被广泛应用于局域网 和 广域网
    • 五层体系结构:融合了OSITCP / IP的体系结构,目的是为了学习 & 讲解计算机原理
  • TCP / IP的体系结构详细介绍 由于 TCP / IP体系结构较为广泛,故主要讲解

1.2 HTTP 协议通信的基础模型

  • HTTP协议传输信息的基础:TCP/IP协议模型
  • HTTP协议 属于 最高层的应用层

2. 简介

下面,将简单介绍一下 HTTP


3. 工作方式

  • HTTP协议采用 请求 / 响应 的工作方式
  • 具体工作流程如下:

4. HTTP报文详解

  • HTTP在 应用层 交互数据的方式 = 报文
  • HTTP的报文分为:请求报文 & 响应报文 分别用于 发送请求 & 响应请求时
  • 下面,将详细介绍这2种报文

4.1 请求报文

4.1.1 报文结构

  • HTTP的请求报文由 请求行、请求头 & 请求体 组成,如下图
  • 下面,将详细介绍每个组成部分

4.1.2 结构详细介绍

组成1:请求行
  • 作用 声明 请求方法 、主机域名、资源路径 & 协议版本
  • 结构 请求行的组成 = 请求方法 + 请求路径 + 协议版本 注:空格不能省
  • 组成介绍

此处特意说明GET、PSOT方法的区别:

则 请求行是:GET /chn/yxsz/index.htm HTTP/1.1

组成2:请求头
  • 作用:声明 客户端、服务器 / 报文的部分信息
  • 使用方式:采用”header(字段名):value(值)“的方式
  • 常用请求头 1. 请求和响应报文的通用Header

2. 常见请求Header

组成3:请求体
  • 作用:存放 需发送给服务器的数据信息 可选部分,如 GET请求就无请求数据
  • 使用方式:共3种

至此,关于请求报文的请求行、请求头、请求体 均讲解完毕。

4.1.3 总结

  • 关于 请求报文的总结如下
  • 请求报文示例

4.2 HTTP响应报文

4.2.1 报文结构

  • HTTP的响应报文包括:状态行、响应头 & 响应体
  • 其中,响应头、响应体 与请求报文的请求头、请求体类似
  • 这2种报文最大的不同在于 状态行 & 请求行

下面,将详细介绍每个组成部分

4.2.2 结构详细介绍

组成1:状态行

  • 作用 声明 协议版本,状态码,状态码描述
  • 组成 状态行有协议版本、状态码 &状态信息组成 其中,空格不能省
  • 具体介绍
  • 状态行 示例 HTTP/1.1 202 Accepted(接受)、HTTP/1.1 404 Not Found(找不到)

组成2:响应头

  • 作用:声明客户端、服务器 / 报文的部分信息
  • 使用方式:采用”header(字段名):value(值)“的方式
  • 常用请求头 1. 请求和响应报文的通用Header

2. 常见响应Header

组成3:响应体

  • 作用:存放需返回给客户端的数据信息
  • 使用方式:和请求体是一致的,同样分为:任意类型的数据交换格式、键值对形式和分部分形式

4.2.3 响应报文 总结

4.3 总结

下面,简单总结两种报文结构


5. 额外知识

下面将讲解一些关于HTTP的额外知识:

  • HTTP1.1HTTP1.0 的区别
  • HTTPHTTPS的区别
  • HTTP 处理长连接的方式

5.1 HTTP1.1 与 HTTP1.0的区别

Http1.1Http1.0 多了以下优点:

  • 引入持久连接,即 在同一个TCP的连接中可传送多个HTTP请求 & 响应
  • 多个请求 & 响应可同时进行、可重叠
  • 引入更加多的请求头 & 响应头

如 与身份认证、状态管理 & Cache缓存等机制相关的、HTTP1.0host字段

5.2 HTTP 与HTTPS的区别

5.3 HTTP处理长连接的方式


6. 总结

  • 本文全面总结了HTTP的基础知识
  • 接下来我会介绍继续Android开发中的相关知识,有兴趣可以继续关注Carson_Ho的安卓开发笔记

帮顶 / 评论请点赞!因为你们的鼓励是我写作的最大动力!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018年08月27日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 目录
  • 1. 储备知识
    • 1.1 计算机网络体系结构
      • 1.2 HTTP 协议通信的基础模型
      • 2. 简介
      • 3. 工作方式
      • 4. HTTP报文详解
        • 4.1 请求报文
          • 4.1.1 报文结构
            • 4.1.2 结构详细介绍
              • 4.1.3 总结
                • 4.2 HTTP响应报文
                  • 4.2.1 报文结构
                    • 4.2.2 结构详细介绍
                      • 组成1:状态行
                        • 组成2:响应头
                          • 组成3:响应体
                            • 4.2.3 响应报文 总结
                              • 4.3 总结
                              • 5. 额外知识
                                • 5.1 HTTP1.1 与 HTTP1.0的区别
                                  • 5.2 HTTP 与HTTPS的区别
                                    • 5.3 HTTP处理长连接的方式
                                    • 6. 总结
                                    • 帮顶 / 评论请点赞!因为你们的鼓励是我写作的最大动力!
                                    相关产品与服务
                                    云服务器
                                    云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                                    领券
                                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档