HTTP基础知识入门

HTTP基础知识入门

Web 是典型的 B/S 架构,而 B/S 架构中最重要的就是 HTTP 协议。虽然我目前只是个会写几个前端页面的小菜,但实际上很多场景下还是要接触 nodejs 等服务端程序的编写。而服务端与客户端(浏览器)端的通信使用的就是 HTTP 协议,因此就目前来说简单地了解一下 HTTP 协议的内容还是很有必要的。至少别人问我 HTTP 的特点我可以回答无状态、无连接和媒体独立

定义

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写, 是用于从服务器传输超文本到浏览器的传送协议。 - 浏览器作为HTTP客户端通过URLHTTP服务端即Web服务器发送所有请求 - Web服务器根据接收到的请求后, 向客户端发送响应消息。 ## 注意 HTTP是无连接的、媒体独立的、无状态的。

HTTP消息结构

客户端请求消息

如:

1
2
3
4
GET /hello.txt HTTP/1.1
User-Agent: curl/7.16.3 libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
Host: www.example.com
Accept-Language: en, mi

服务端响应消息

如:

1
2
3
4
5
6
7
8
9
HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
ETag: "34aa387-d-1568eb00"
Accept-Ranges: bytes
Content-Length: 51
Vary: Accept-Encoding
Content-Type: text/plain

参考链接: > http://www.runoob.com/http/http-tutorial.html