HTTP协议

一:Web服务的过程#

(1)首先客服端向服务端发送连接请求

(2)服务端接受客户端的请求

(3)服务端读取客户端的请求内容 对客户端进行响应

(4)客户端接受服务端的响应 以特定的渲染方式将页面呈现给用户看

 

二:HTTP协议(超文本传输协议)#

(1)作用:规定了浏览器与服务端之间传输信息的格式

  (1)请求数据格式:

    (1)请求首行:标识HTTP协议版本 以及当前的请求方式

    (2)请求头:包含一大堆的K/V键值对

    (3)\r\n换行

    (4)请求体:包含一大堆的敏感信息 例如:密码 身份证号等

  (2)响应数据格式:

    (1)响应首行:标识HTTP协议版本 以及当前的请求方式

    (2)响应头:包含一大堆的K/V键值对

    (3)\r\n

    (4)响应体:包含一些敏感性数据

  (3)响应状态码:

    (1)1xx:服务端接受客户端的请求信息 且客户端可以继续提交数据

    (2)2xx:服务端收到客户端发送的请求信息 并且处理成功(返回状态码200)

    (3)3xx:重定向(当你访问一个页面的时候 会自动给你跳转到登录页面 返回端口状态码301)

    (4)4xx:请求错误(服务端没有相应的资源 返回状态码404 或者权限不够不能访问某些资源 返回状态码403)

    (5)5xx:服务器内部错误(服务端崩溃)

 

(2)特性:

  (1)基于请求响应: 例如:当我通过鼠标点击一个页面(发送请求)服务端将我点击鼠标的页面返回给我(响应)

  (2)基于TCP/IP协议之上的应用层协议 端口号默认为80

  (3)无状态:服务端不会保存客户端的状态信息 例如:即使你已经向我建立1000次连接 我还是不知道你的状态 每次来状态都如初

        PS:基于无状态协议 如果想保留客户的状态 我们使用cookie/session机制

  (4)无连接:请求来一次我进行响应  之后立马断开连接 两者无任何管理信息

        PS:针对无连接机制 可以使用websocket机制其相当于一个大的补丁 可以保持连接状态

 

(3)请求方式:

  (1)get:朝服务端要资源

      PS:输入百度网址等

  (2)post:朝服务端输入资源

      PS:例如在百度搜索栏输入内容

 

posted @   SR丶  阅读(177)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示
CONTENTS