HTTP的概念

HTTP : Hypertext Transfer Protocol 超文本传输协议

因特网上有数千种不同的数据类型,HTTP仔细地给每种要通过Web传输的对象都打上了名为MIME类型的数据格式标签。

MIME类型 是一种文本标记,表示一种主要的对象类型和一个特定的子类型,中间由一道 / 来分割。

  • 例如:HTML文档: text / html
  • ASCII文档: text / plain
  • JPEG图片: image / jpeg
  • GIF图片: image / gif
  • 常见的MIME类型有数百个,实验性或用途有限的则更多。

URI: Uniform Resource Identifier 统一资源标识符,给定URI,HTTP就可以解析出对象,主要包括三个部分:

  • 1.方案 scheme 通常是HTTP协议
  • 2.因特网地址
  • 3.Web服务器上的某个资源

现在几乎所有的URI都是URL。

常见的HTTP方法:

  • GET:从服务器向客户端返送命名资源
  • PUT:将来自客户端数据存储到一个命名的服务器资源中
  • DELETE:从服务器中删除命名资源
  • POST:将客户端数据发送到一个服务器网关应用程序
  • HEAD:仅发送命名资源响应中的HTTP首部

常见HTTP状态码:

  • 200:OK 成功
  • 302:Redirect 重定向
  • 404:Not Found 访问资源不存在

HTTP报文:

  • 1.起始行
  • 2.首部字段
  • 3.主体

Web客户端 ---- 请求报文 ---- Web服务端

Web客户端 ---- 响应报文 ---- Web服务端

TCP : Transmission Control Protocol 传输控制协议

IP : Internet Protocol 网际协议

TCP提供了:无差错的数据传输,按序传输,数据总是会按照发送顺序到达未分段的数据流(可以在任意时刻以任意尺寸将数据发出去)。因特网自身就是通过TCP / IP 的,TCP / IP是全世界的计算机和网络设备常用的层次化交换网络协议集。TCP / IP 隐藏了各种网络和硬件的特点及弱点,使各种类型的计算机和网络都能进行可靠地通信。

HTTP协议位于TCP上层,TCP则位于IP的上层。

  • HTTP ---- 应用层
  • TCP ---- 传输层
  • IP ---- 网络层
  • 网络所有的链路接口 ---- 数据链路层
  • 物理网络硬件 ---- 物理层

隧道的概念

隧道:是建立起来以后,就会在两条连接之间对原始数据进行盲转发的HTTP应用程序。HTTP隧道通常用来在一条或多条HTTP连接上转发非HTTP数据,转发时不会窥探数据。一种常见用途是:通过HTTP连接承载加密的安全套接子层SSL(Secure Sockets Layer)流量。隧道可以在非HTTP网络上转发数据,显示HTTP / SSL 隧道。

Agent代理:代表用户发起HTTP请求的客户端程序,所有发布Web请求的应用程序都是HTTP Agent代理。如:浏览器。

图灵图书 -- HTTP权威指南

豆瓣读书 -- HTTP权威指南

《HTTP权威指南》– 1.HTTP概述的更多相关文章

  1. HTTP权威指南笔记-1.概述

    1.1 通讯 Web内容是存储在服务器上的,Web服务所使用的是HTTP协议,所以经常称为HTTP服务器.通讯过程为客户端(正常我们所使用的)发出请求,服务端根据客户端的HTTP请求响应相应数据,这就 ...

  2. HTTP 权威指南 详解 ( 一、概述 )

    HTTP 权威指南 详解 ( 一.概述 ) 最近在解读 <http权威指南> 这本书.之前对于http 的理解仅限于 知道我需要向服务端发送一个 get or post 请求,然后等待服务 ...

  3. 【HTTP权威指南】第1 章 HTTP 概述

    1.1 HTTP--因特网的多媒体信使 ................................................................................ ...

  4. Http权威指南(概述篇总结)

    之前的<锋利的jQuery>后面陆续翻完了,实在觉得没什么值得记录的,也就没继续写了,然后看见书架上有 本去年买的<Http权威指南>,其实做web编程的,对于Http协议还是 ...

  5. ARM Cortex-M0权威指南高清中文版pdf免费分享下载

    版 次:1 页 数:433 字 数:655000 印刷时间:2013-8-1 开 本:16开 纸 张:胶版纸 印 次:1 包 装:平装 丛书名:清华开发者书库 国际标准书号ISBN:978730233 ...

  6. FORTRAN程序设计权威指南

    <FORTRAN程序设计权威指南> 基本信息 作者: 白海波    出版社:机械工业出版社 ISBN:9787111421146 上架时间:2013-7-23 出版日期:2013 年7月 ...

  7. Visual C++2010开发权威指南 中文高清PDF - VC.NET

    第一部分  Visual C++ 2010开发与新特性第1章  Visual C++ 2010开发环境简介 11.1  Visual C++ 2010简介 11.2  Visual C++ 2010下 ...

  8. 《jQuery权威指南》学习笔记之第2章 jQuery选择器

    2.1 jQuery选择器概述 2.1.1 什么使选择器 2.1.2 选择器的优势: 代码更简单,完善的检测机制  1.代码更简单   示例2-1     使用javascript实现隔行变色 < ...

  9. Hadoop权威指南:压缩

    Hadoop权威指南:压缩 [TOC] 文件压缩的两个好处: 减少储存文件所需要的磁盘空间 加速数据在网络和磁盘上的传输 压缩格式总结: 压缩格式 工具 算法 文件扩展名 是否可切分 DEFLATE ...

  10. 《http权威指南》读书笔记18

    概述 最近对http很感兴趣,于是开始看<http权威指南>.别人都说这本书有点老了,而且内容太多.我个人觉得这本书写的太好了,非常长知识,让你知道关于http的很多概念,不仅告诉你怎么做 ...

随机推荐

  1. 使用Elasticsearch的processors来对csv格式数据进行解析

    来源数据是一个csv文件,具体内容如下图所示: 导入数据到es中 有两种办法,第一种是在kibana界面直接上传文件导入 第二种方法是使用filebeat读取文件导入 这里采用第二种办法 配置文件名: ...

  2. @property装饰器和property()函数

    @property装饰器 Python内置的@property装饰器可以把类的方法伪装成属性调用的方式.也就是本来是Foo.func()的调用方法,变成Foo.func的方式. class Peopl ...

  3. Python解释器路径寻找规则

    Python编辑器路径寻址总结 Python编程优化 这场表演邀请了三位角色:run.sh.main.py.path.sh,拍摄场地选在了 Windows -> Git Bash 群演1号 ru ...

  4. 利用msg_msg实现任意地址读写

    利用msg_msg实现任意地址读写 msgsnd和msgrcv的源码分析 内核通过msgsnd和msgrcv来进行IPC通信.内核消息分为两个部分,一个是消息头msg_msg(0x30),以及后面跟着 ...

  5. Git 便捷操作

    虽然现在有很多图形化的 Git 工具,但是命令行依然 yyds.本文记录了工作中很有用的一些 Git 操作. 1.Fork出来的Git仓库同步代码 背景:有的时候从原仓库fork出了一个新仓库,这个新 ...

  6. Tubian0.43,完善对QQ微信的支持

    Sourceforge.net下载:https://sourceforge.net/projects/tubian/ 123网盘下载: https://www.123pan.com/s/XjkKVv- ...

  7. WPF开发经验-WPF的TextBox控件的MouseDown事件不响应的解决方法

    一 问题的发现 最近项目有个需求,大概是,当点击某个TextBox时,先执行一些业务上的逻辑处理. 于是按以往思维,将TextBox的MouseDown事件关联事件处理方法,将业务处理写在方法里. 调 ...

  8. 一篇文章带你掌握主流服务层框架——SpringMVC

    一篇文章带你掌握主流服务层框架--SpringMVC 在之前的文章中我们已经学习了Spring的基本内容,SpringMVC隶属于Spring的一部分内容 但由于SpringMVC完全针对于服务层使用 ...

  9. SpringBoot后端接口项目

    创建SpringBoot项目 项目目录 实体类 点击查看代码 package com.bai.entity; import com.baomidou.mybatisplus.annotation.Id ...

  10. 6.pygame-搭建主程序

    职责明确 新建plane_main.py 封装主游戏类 创建游戏对象 启动游戏   新建plane_sprites.py 封装游戏中所有需要使用的精灵子类 提供游戏的相关工具 #plane_sprit ...