http协议

http协议构成整理

霸气de小男生 提交于 2020-03-14 13:12:06
1. HTTP请求 1.1 请求报文格式: HTTP的请求由3部分组成:请求行、请求头、请求体。 SP代表空格、CRLF代表换行 浏览器必须已这个格式发送请求,服务器才能正常解析和响应。 1.2 请求报文示例 1.3 请求方法 GET 请求获取Request-URI所标识的资源 POST 在Request-URI所标识的资源后附加新的数据,常用于提交表单。 HEAD 请求获取由Request-URI所标识的资源的响应消息报头 PUT 请求服务器存储一个资源,并用Request-URI作为其标识 DELETE 请求服务器删除Request-URI所标识的资源 TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断 CONNECT 保留将来使用 OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求 get和post是最常用的方法,简单来说,前者用于获取数据,后者用于提交数据。 2. HTTP响应 2.1 响应报文格式: HTTP的响应也是由3个部分组成:响应行、响应头,响应体 响应行:status code 表示响应的状态码,description是描述信息。 同样 SP代表空格、CRLF代表换行, 响应必须以这种规范格式发送给浏览器,浏览器才能正常解析并显示。 2.2 响应报文示例 2.3响应码 200段是成功;300段需要对请求做进一步的处理

HTTP协议详解

為{幸葍}努か 提交于 2020-03-12 09:38:18
1、持久化连接 http和server端没有明确释放连接就不断开连接。 2、管线化 保持持久连接就不用一个请求等到上一个连接的响应返回才发送下一个请求。 3、HTTP报文详解 http请求由多行数据构成的字符串文本 请求报文和响应报文如图所示 请求行包括请求方法,请求URI,HTTP版本 状态行包含表明响应结果的状态码,原因短语和HTTP版本 通用首部 Cache-Control:控制缓存的行为 Connection:管理持久连接 Date:首部字段Date表明HTTP报文的日期和时间 Trailer:表明报文主体记录字段,主体分块长度0后就是首部这里的字段 Transfer-Encoding:传输报文主体的编码方式 Upgrade:是否可升级更高版本协议 Via:追踪客户端和服务端之间的请求和响应报文的传输路径。 请求首部字段 Accept:用户代理能处理的媒体类型 Accept-charset:用户代理支持的字符集 Accept-Encoding:用户代理支持的内容编码 Accept-language:支持的语言 Authorization:用户代理信息 Expect:期望 From:用户电子邮箱 Host:用户端主机名 Referer:请求的原始资源的URI User-Agent:传递器种类 响应首部字段 Location:请求引导到其他URI 实体首部字段 Allow

计网-2.3、万维网与HTTP协议

眉间皱痕 提交于 2020-03-12 06:38:41
引子 如何定位网页的信息 HTTP协议(请求与相应) http协议:超文本传输协议(需要可靠,用TCP协议) http1.0的工作过程 非流水线模式传每个东西动需要建立TCP请求 流水线模式:一次请求可以传多个文件 如果html太长会分段传输 HTTP1.1的工作过程 多条连接,且每条连接多个请求 请求报文的数据部分有时候也会带数据:比如登录的账号密码等 HTTP协议可以上传和下载文件 来源: CSDN 作者: 墨九南烟 链接: https://blog.csdn.net/qq_44157281/article/details/104804550

HTTP协议及请求/响应模型

拥有回忆 提交于 2020-03-10 05:57:43
1、上网的整个过程   假设我们点击了某网页上的一个链接,指向 清华大学院系设置 ,其URL是: http://www.tsinghua.edu.cn/chn/yxsz/index.html 。我们来分析一下整个过程: 浏览器分析链接指向页面的URL 浏览器向DNS请求解析www.tsinghua.edu.cn的IP地址 DNS系统解析出清华大学服务器的地址是166.111.4.100 浏览器与服务器建立TCP连接 浏览器发出取文件命令: GET /chn/yxsz/index.html 服务器www.tsinghua.edu.cn给出响应,把文件index.html返回给浏览器 释放TCP连接 浏览器解析并显示“清华大学院系设置”文件index.html中的内容 2、HTTP协议   Internet的基本协议是TCP/IP协议,目前广泛使用的FTP、HTTP协议都是基于TCP/IP的,HTTP是Web应用使用最主要的协议。   HTTP基于请求响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户端信息和内容的类似MIME的消息结果。服务器则返回一个状态行作为响应,内容包括消息协议的版本、成功或失败编码加上包含服务器信息、实体元信息以及可能的实体内容。   HTTP协议是 无状态 的

Http协议

只愿长相守 提交于 2020-03-10 02:34:26
一 HTTP 概述 HTTP ( hypertext transport protocol ),即超文本传输协议。这个协议 详细规定了浏览器和万维网服务器之间互相通信的规则。 HTTP 就是一个通信规则,通信规则规定了客户端发送给服务器的内容格式,也规定了服务器发送给客户端的内容格式。其实我们要学习的就是这个两个格式!客户端发送给服务器的格式叫 “ 请求协议 ” ;服务器发送给客户端的格式叫 “ 响应协议 ” 。 特点: HTTP叫超文本传输协议,基于请求/响应模式的! HTTP是无状态协议。 无状态表示对于事物的处理没有记忆能力。有两种保持HTTP连接状态的技术,一个是Cookie,另一个是Session。 URL :统一资源定位符,就是一个网址: 协议名 :// 域名 : 端口 / 路径,例如: http://www.oldboy.cn:80/index.html 二 请求协议 请求协议的格式如下: 请求首行; // 请求方式 请求路径 协议和版本,例如:GET /index.html HTTP/1.1 请求头信息;// 请求头名称:请求头内容,即为key:value格式,例如:Host:localhost 空行; // 用来与请求体分隔开 请求体。 // GET没有请求体,只有POST有请求体。 浏览器发送给服务器的内容就这个格式的,如果不是这个格式服务器将无法解读!在

网络基础知识 - HTTP协议

社会主义新天地 提交于 2020-03-09 17:40:24
这里还有一篇帖子写得很详细,可以拜读一下 https://www.cnblogs.com/ranyonsue/p/5984001.html 前传:HTTP协议的演变过程   HTTP(HyperText Transfer Protocol)协议是基于TCP的应用层协议,它不关心数据传输的细节,主要是用来规定客户端和服务端的数据传输格式,最初是用来向客户端传输HTML页面的内容。默认端口是80。 1.HTTP 0.9版本  1991年   这个版本就是最初用来向客户端传输HTML页面的,所以只有一个GET命令,然后服务器返回客户端一个HTML页面,不能是其他格式。利用这个版本完全可以构建一个简单的静态网站了。 2.HTTP 1.0版本  1996年   1.0版本是改变比较大的,奠定了现在HTTP协议的基础。这个版本的协议不仅可以传输HTML的文本页面,还可以传输其他二进制文件,例如图片、视频。而且还增加了现在常用的POST和HEAD命令。请求消息和响应消息也不是单一的了,规定了一些元数据字段。例如字符集、编码、状态响应码等。 3.HTTP 1.1版本  1997年   实际上是在1.0版本之后半年时间又发布了一个版本,这个版本在1.0版本的基础上更加完善了。这个版本增加了持久连接,就是说之前版本的协议一次请求就是一次TCP连接,请求完成后这个连接就关闭掉了

Google Protocol Buffer 协议

我是研究僧i 提交于 2020-03-09 08:28:49
1. Protocol Buffers 简介    Protocol Buffers (ProtocolBuffer/ protobuf )是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可以使用该技术来持久化数据或者序列化成网络传输的数据。主要用于数据存储、通信协议等方面。现阶段支持C++、JAVA、Python、Objective-C、C#、Javascript等6种编程语言。Googel 公司 2015-12-31 更新了最新的版本Version 3.0.0-beta-2,相比较一些其他的XML技术而言,该技术的一个明显特点就是更加节省空间(以二进制流存储)、速度更快以及更加灵活 同XML相比,Protocol buffers在序列化结构化数据方面有许多优点(google官方提出): 更简单 数据描述文件只需原来的1/10至1/3 解析速度是原来的20倍至100倍 减少了二义性 生 成了更容易在编程中使用的数据访问类 2. 相关链接 在网上已有不少热心园友或大牛撰写了关于 Protocol Buffers 的博客或文章,这里对 Protocol Buffers 的介绍就不再赘述了,相关连接如下: https://github.com/google/protobuf/releases Protocol Buffers 下载 http://www

HTTP协议随笔

百般思念 提交于 2020-03-08 22:06:08
1.简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写。 2.特点 简单快速 灵活 HTTP 0.9和1.0使用非持续连接 HTTP 1.1使用持续连接 无状态 支持B/S (浏览器/服务器 ) 及C/S模式(客户机/服务器) 3.工作原 1、客户端连接到Web服务器 一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接 2、发送HTTP请求 通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。 3、服务器接受请求并返回HTTP响应 Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。 4、释放连接 TCP连接 若connection 模式为close,则服务器主动关闭 TCP连接 ,客户端被动关闭连接,释放 TCP连接 ;若connection 模式为keepalive,则该连接会保持一段时间,在该时间内可以继续接收请求; 5、客户端浏览器解析HTML内容 客户端浏览器首先解析状态行,查看表明请求是否成功的状态代码。然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML

HTTP协议详解

点点圈 提交于 2020-03-08 20:21:31
HTTP报文结构 HTTP请求报文 HTTP响应报文 报文概要结构 请求方法 HTTP/1.1协议常见请求方法有以下六种: 方法 解释 OPTIONS 询问服务器针对特定资源所支持的HTTP请求方法,也可以利用向服务器发送'*'的请求来测试服务器的功能性 HEAD 向服务器索要响应头部。 GET 向服务器的URI所标识的资源发出请求。请求参数放在URL中。 POST 向服务器的URI所标识的资源提交数据。数据被包含在请求体中。 PUT 向URI所标识的资源位置上传其最新内容。 PATCH 请求将局部修改应用于URI所标识的资源。 DELETE 请求服务器删除URI所标识的资源。 状态码 报文字段 请求头字段 Range:(unit=first byte pos)-[last byte pos] 响应头字段 Content-Length: entity legth Content-Range: bytes (unit first byte pos) - [last byte pos]/[entity legth] 来源: CSDN 作者: watesoyan 链接: https://blog.csdn.net/weixin_39995275/article/details/104736970

爬虫之http协议学习笔记

假装没事ソ 提交于 2020-03-08 10:29:38
No one and you.无人及你 文章目录 1.什么是http协议和https协议 2.在浏览器中发送一个http请求的过程 3.url详解 4.常用的请求方法 5.请求头常见参数 6.常见的响应状态码 1.什么是http协议和https协议: http协议: 全称是HyperText Transfer Protocol,中文意思是超文本传输协议,是一种发布和接收HTML页面的方法。服务器端口是80端口。 https协议: 是HTTP协议的加密版本,在HTTP下加入了SSL层,服务器端口是443端口。 2.在浏览器中发送一个http请求的过程: ①.当用户在浏览器的地址栏中输入一个URL并按回车键之后,浏览器回向HTTP服务器发送HTTP请求。HTTP请求主要分为‘Get’和‘Post’两种方法。 ②.当我们在浏览器输入URL:http://www.baidu.com的时候,浏览器发送一个Request请求去获取Http://www.baidu.com的html文件,服务器把Response文件对象发送回给浏览器 ③.浏览器分析Response中的HTML,发现其中引用了很多其他文件,比如Images文件,css文件,JS文件。浏览器会自动再次发送Request去获取图片,css文件,或js文件。 ④.当所有的文件都下载成功后,网页会根据HTML语法结构,完整的显示出来了。