- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网页开发基础教程HTTP 协议入门HTTP 协议是互联网的基础协议,也是网页开发的必备知识,最新版本 HTTP/2 更是让它成为技术热点。本文介绍 HTTP 协议的历史演变和设计思路。一、HTTP/0.9HTTP 是基于 TCP/IP 协议的应用层协议。它不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式,默认使用80端口。最早版本是1991年发布的0.9版。该版本极其简单,只有一个命令GET。GET /index.html上面命令表示,TCP 连接(connection)建立后,客户端向服务器请求(request)网页index.html。协议规定,服务器只能回应HTML格式的字符串,不能回应别的格式。Hello World服务器发送完毕,就关闭TCP连接。二、HTTP/1.02.1 简介1996年5月,HTTP/1.0 版本发布,内容大大增加。首先,任何格式的内容都可以发送。这使得互联网不仅可以传输文字,还能传输图像、视频、二进制文件。这为互联网的大发展奠定了基础。其次,除了GET命令,还引入了POST命令和HEAD命令,丰富了浏览器与服务器的互动手段。再次,HTTP请求和回应的格式也变了。除了数据部分,每次通信都必须包括头信息(HTTP header),用来描述一些元数据。其他的新增功能还包括状态码(status code)、多字符集支持、多部分发送(multi-part type)、权限(authorization)、缓存(cache)、内容编码(content encoding)等。2.2 请求格式下面是一个1.0版的HTTP请求的例子。GET / HTTP/1.0User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5)Accept: */*可以看到,这个格式与0.9版有很大变化。第一行是请求命令,必须在尾部添加协议版本(HTTP/1.0)。后面就是多行头信息,描述客户端的情况。2.3 回应格式服务器的回应如下。HTTP/1.0 200 OK Content-Type: text/plainContent-Length: 137582Expires: Thu, 05 Dec 1997 16:00:00 GMTLast-Modified: Wed, 5 August 1996 15:55:28 GMTServer: Apache 0.84Hello World回应的格式是头信息 + 一个空行(\r\n) + 数据。其中,第一行是协议版本 + 状态码(status code) + 状态描述。2.4 Content-Type 字段关于字符的编码,1.0版规定,头信息必须是 ASCII 码,后面的数据可以是任何格式。因此,服务器回应的时候,必须告诉客户端,数据是什么格式,这就是Content-Type字段的作用。下面是一些常见的Content-Type字段的值。text/plaintext/htmltext/cssimage/jpegimage/pngimage/svg+xmlaudio/mp4video/mp4application/javascriptapplication/pdfapplication/zipapplication/atom+xml这些数据类型总称为MIME type,每个值包括一级类型和二级类型,之间用斜杠分隔。除了预定义的类型,厂商也可以自定义类型。application/vnd.debian.binary-package上面的类型表明,发送的是Debian系统的二进制数据包。MIME type还可以在尾部使用分号,添加参数。Content-Type:text/html; charset=utf-8上面的类型表明,发送的是网页,而且编码是UTF-8。客户端请求的时候,可以使用Accept字段声明自己可以接受哪些数据格式。Accept: */*上面代码中,客户端声明自己可以接受任何格式的数据。MIME type不仅用在HTTP协议,还可以用在其他地方,比如HTML网页。2.5 Content-Encoding 字段由于发送的数据可以是任何格式,因此可以把数据压缩后再发送。Content-Encoding字段说明数据的压缩方法。Content-Encoding:gzipContent-Encoding:compressContent-Encoding:deflate客户端在请求时,用Accept-Encoding字段说明自己可以接受哪些压缩方法。Accept-Encoding:gzip, deflate2.6 缺点HTTP/1.0 版的主要缺点是,每个TCP连接只能发送一个请求。发送数据完毕,连接就关闭,如果还要请求其他
您可能关注的文档
- 如何学好工程预算的经验346.docx
- 如何对真假毕业证书辨别346.doc
- 如何帮助孩子区分平舌音翘舌音346.docx
- 如何成功打造品牌形象力.docx
- 如何提高发表论文的“命中率”.docx
- 如何持续进行连锁企业团队文化打造).doc
- 如何根据牙齿来判断牛的年龄.docx
- 如何正确理解马克思主义中国化的科学内涵346.docx
- 如何用excel2007做直方图346.docx
- 如何看待农民工现象教学设计.docx
- 山东聊城市文轩中学2026届数学八年级第一学期期末统考试题含解析.doc
- 安徽省芜湖市繁昌县2026届八年级数学第一学期期末预测试题含解析.doc
- 辽宁省锦州市凌海市2026届九年级数学第一学期期末调研模拟试题含解析.doc
- 江苏省泰州市姜堰区2026届八年级数学第一学期期末考试模拟试题含解析.doc
- 2026届广西桂林市灌阳县数学九上期末经典试题含解析.doc
- 安徽省马鞍山市2026届数学八上期末达标检测模拟试题含解析.doc
- 山南市重点中学2026届数学八年级第一学期期末学业水平测试模拟试题含解析.doc
- 种子预约生产合同协议书(精选).doc
- 石材买卖(合同)与石材买卖(合同)范本.doc
- 六、劳动合同书(16页版本).doc
原创力文档


文档评论(0)