HTTP相关知识点

2020-12-29  本文已影响0人  肉包君

2020-12-29

http常见状态码的含义
200---OK/请求已经正常处理完毕
301---/请求永久重定向
302---/请求临时重定向
304---/请求被重定向到客户端本地缓存
400---/客户端请求存在语法错误
401---/客户端请求没有经过授权
403---/客户端的请求被服务器拒绝,一般为客户端没有访问权限
404---/客户端请求的URL在服务端不存在
500---/服务端永久错误
503---/服务端发生临时错误
HTTP协议详解

超文本传输协议,是一种建立在TCP上的无状态的连接
工作流程:客户端发送一个http请求,表明客户端想要访问的资源和动作,服务端收到请求后,开始处理请求。根据请求作出相应的动作访问服务器资源,最后通过发送http响应把结果返回给客户端。
每个请求开始到响应结束成为事务,当一个事务结束后还会在服务端添加一条日志。
(现在大多数http协议版本为http/1.1)

  1. http请求
    含义:客户端网服务端发送请求动作,告知服务器自己的要求
    http请求由 状态行、请求头、请求正文组成
    状态行:包括请求方式Method、资源路径URL、协议版本Version
    请求头:包括访问的域名、用户代理、Cookie等信息
    请求正文:请求的数据
    (Method包括GET(获取)、POST(修改)、PUT(上传)、DELETE(删除),其中GET方式仅为获取服务器资源,因此请求正文可以忽略不写)

  2. http响应
    含义:服务器收到客户端发来的请求后,根据http请求中的动作要求,服务器做出具体的动作,将结果回应给客户端。
    http响应由 状态行、响应头、响应正文组成
    状态行:包括协议版本Version、状态码Status Code、回应短语
    响应头:包括搭建服务器的软件、发送响应的时间、回应数据的格式等信息
    响应正文:响应的具体数据

http响应模型
  1. 单进程I/O模型
    服务端开启一个进程,一个进程仅能处理一个请求,并且对请求 顺序处理
  2. 多进程I/O模型
    服务端并行开启多个进程,一个进程处理一个请求,这样服务端就能同时处理多个请求了
  3. 复用I/O模型
    服务端开启一个进程,但一个进程又同时开启多个线程,一个线程处理一个请求,线程间并发执行,以此实现同时处理多个请求
  4. 复用多线程I/O模型
    服务端并行开启多个进程,每个进程开启多个线程,这样服务端就能同时处理更多的请求(进程总数 x 每个进程开启的线程总数)
HTTP请求报文格式
http请求.png
HTTP响应报文格式
http响应.png
上一篇 下一篇

猜你喜欢

热点阅读