Http 简介

传统的HTTP服务器的原理:

  1. 创建一个ServerSocket,监听并绑定一个端口
  2. 一系列客户端来请求这个端口
  3. 服务器使用Accept,获得一个来自客户端的Socket连接对象
  4. 启动一个新线程处理连接
    • 读Socket,得到字节流
    • 解码协议,得到Http请求对象
    • 处理Http请求,得到一个结果,封装成一个HttpResponse对象
    • 编码协议,将结果序列化字节流
    • 写Socket,将字节流发给客户端
  5. 继续循环步骤3
    HTTP服务器之所以称为HTTP服务器,是因为编码解码协议是HTTP协议,如果协议是Redis协议,那它就成了Redis服务器,如果协议是WebSocket,那它就成了WebSocket服务器,等等。

HTTP的协议:

  1. 请求


    Http 简介_第1张图片
    image.png
POST / HTTP1.1
Host:www.xxx.com
User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)
Content-Type:application/x-www-form-urlencoded
Content-Length:40
Connection: Keep-Alive

name=xxx&age=18

2.响应


Http 简介_第2张图片
image.png
HTTP/1.1 200 OK
Date: Mon, 22 May 2015 07:09:11 GMT
Content-Type: text/html; charset=UTF-8


      
      
            <***> 
      

写在最后:
协议上Post和Get没有差别,实际上有约定俗成的做法。

你可能感兴趣的:(Http 简介)