以下为个人认为有必要记录的笔记 不喜勿喷
HTTP简介
- 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。
- HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。
- 所有的www文件都必须遵守这个标准。
HTTP/1.1相较于 HTTP/1.0 协议的区别
- 缓存处理
- 带宽优化及网络连接的使用
- 错误通知的管理
- 消息在网络中的发送
- 互联网地址的维护
- 安全性及完整性
HTTP工作原理
- HTTP协议工作于客户端-服务端架构为上。
- 浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。
- Web服务器有:Apache服务器,IIS服务器(Internet Information Services)等。
- HTTP默认端口号为80。
HTTP注意事项
- HTTP是无连接
- 无连接的含义是限制每次连接只处理一个请求。
- 服务器处理完客户的请求,并收到客户的应答后,即断开连接。可以节省传输时间。
- HTTP是媒体独立的
- 只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。
- 客户端以及服务器指定使用适合的MIME-type内容类型。
- HTTP是无状态
- HTTP协议是无状态协议。
- 无状态是指协议对于事务处理没有记忆能力。
- 缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。
- 另一方面,在服务器不需要先前信息时它的应答就较快。
HTTP消息结构
- HTTP是基于客户端/服务端(C/S)的架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求/响应协议。
- 一个HTTP"客户端"是一个应用程序(Web浏览器或其他任何客户端),通过连接到服务器达到向服务器发送一个或多个HTTP的请求的目的。
- 一个HTTP"服务器"同样也是一个应用程序(通常是一个Web服务,如Apache Web服务器或IIS服务器等),通过接收客户端的请求并向客户端发送HTTP响应数据。
- HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接。
- 一旦建立连接后,数据消息就通过类似Internet邮件所使用的格式[RFC5322]和多用途Internet邮件扩展(MIME)[RFC2045]来传送。
客户端请求消息
由四个部分组成,分别是:请求行(request line)、请求头部(header)、空行和请求数据。
服务器响应消息
由四个部分组成,分别是:状态行、消息报头、空行和响应正文。
HTTP请求方法
HTTP响应头信息
HTTP状态码
- 常见的HTTP状态码:
- 200 - 请求成功
- 301 - 资源(网页等)被永久转移到其它URL
- 404 - 请求的资源(网页等)不存在
- 500 - 内部服务器错误
HTTP状态码分类
HTTP状态码列表
HTTP content-type
内容类型,一般是指网页中存在的Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件。
(类型实在太多了,我就不码出来了)
写在后面
匆匆地过了一遍HTTP入门知识,对请求和响应的格式以及状态码有了初步的了解。
昨晚并没有按照计划宠幸HTTP和JSON,反倒是被《JavaScript语言精粹》吸引住了,中文版翻译出来的语言读起来带点幽默,据说整本书以罗列JavaScript的精粹为主,书本不厚,计划今天过第一遍~ 每天都想着赶紧进军框架鸭,可是每学习一个入门教程就会引申出其他分支/(ㄒoㄒ)/~~急不得,慢慢来咯。
同样的话:若是发现有错误欢迎大噶纠正!我也会及时弄清改正的!希望没有误导到可爱的你?。
继续努力!