http 请求报文响应报文的格式以及Token cookie session 区别

面试必备

  • [http 请求报文响应报文的格式](#http 请求报文响应报文的格式)
  • [Token cookie session 区别](#Token cookie session 区别)

http 请求报文响应报文的格式

HTTP 请求报文和响应报文的格式如下:
HTTP 请求报文格式:

复制代码
<方法> <路径> <协议版本>
<请求头部字段1>: <值1>
<请求头部字段2>: <值2>
...
<空行>
<请求体>
  • <方法>: 请求方法,例如 GET、POST、PUT、DELETE 等。

  • <路径>: 请求的路径,表示需要访问的资源。

  • <协议版本>: 使用的协议版本,通常是 HTTP/1.1 或 HTTP/2。
    请求头部字段:包含了关于请求的附加信息,每个字段由字段名和对应的值组成,用冒号分隔。
    空行:请求头部和请求体之间需要用一个空行分隔。
    请求体:POST 或 PUT 请求中包含的数据,通常用于传输表单数据、JSON 数据等。
    HTTP 响应报文格式:

    <协议版本> <状态码> <状态码描述>
    <响应头部字段1>: <值1>
    <响应头部字段2>: <值2>
    ...
    <空行>
    <响应体>

  • <协议版本>: 使用的协议版本,通常是 HTTP/1.1 或 HTTP/2。

  • <状态码>: 表示服务器对请求的处理结果的状态码,例如 200 表示成功,404 表示资源未找到等。

  • <状态码描述>: 对状态码的简要描述。
    响应头部字段:包含了关于响应的附加信息,每个字段由字段名和对应的值组成,用冒号分隔。
    空行:响应头部和响应体之间需要用一个空行分隔。
    响应体:服务器返回的数据,可以是 HTML、JSON、文件等。
    需要注意的是,请求报文和响应报文都是纯文本,通过服务器和浏览器之间的传输实现数据的交互。报文的具体内容根据不同的请求和响应类型而有所不同。

Token cookie session 区别

Token、Cookie和Session是常见的身份验证和会话管理机制,它们之间有以下区别:
Token(令牌):

  • Token是一种无状态的身份验证机制,用于验证用户的身份。
  • 在用户进行身份验证后,服务器会生成一个Token并将其发送给客户端(通常是通过HTTP响应的方式)。
  • 客户端收到Token后,将其存储在本地(通常是在客户端的存储器中,如浏览器的localStorage或移动应用程序的本地存储)。
  • 客户端每次向服务器发送请求时,都需要将Token作为请求的一部分发送给服务器(通常是通过HTTP请求头的Authorization字段)。
  • 服务器接收到请求后,通过验证Token的有效性来确定用户的身份。
  • Token可以包含加密的信息,如用户ID、权限等。
    Cookie(HTTP Cookie):
  • Cookie是一种在客户端保存状态信息的机制。
  • 在用户进行身份验证后,服务器会在响应中设置一个Cookie,将其发送给客户端。
  • 客户端收到Cookie后,将其存储在本地(通常是在浏览器中)。
  • 客户端每次向服务器发送请求时,都会自动将Cookie作为请求的一部分发送给服务器。
  • 服务器接收到请求后,通过解析Cookie的内容来获取相关的状态信息。
  • Cookie通常用于保持用户的登录状态、跟踪用户的会话等。
    Session(会话):
  • Session是一种在服务器端保存状态信息的机制。
  • 在用户进行身份验证后,服务器会为该用户创建一个Session,并将Session ID发送给客户端(通常是通过Cookie)。
  • 客户端收到Session ID后,将其存储在本地(通常是在Cookie中)。
  • 客户端每次向服务器发送请求时,都会自动将Session ID作为请求的一部分发送给服务器(通常是通过Cookie)。
  • 服务器接收到请求后,通过Session ID找到对应的Session,并获取相关的状态信息。
  • 服务器会在服务器端保存Session的内容,通常存储在内存或数据库中。
  • Session通常用于跟踪用户的会话、存储用户的身份验证信息等。
    总结来说,Token是一种无状态的身份验证机制,Cookie是一种在客户端保存状态信息的机制,而Session是一种在服务器端保存状态信息的机制。它们在实现上有所不同,适用于不同的场景和需求。
相关推荐
chen367320 分钟前
[Comake][D1][AI_AO][bf_ssl_demo]
网络·网络协议·ssl
初听于你28 分钟前
LoRa与ZigBee:物联网双雄对决
服务器·网络·windows·网络协议·计算机网络
AuroraDPY2 小时前
计算机网络:Socket编程预备
网络·计算机网络
笨蛋不要掉眼泪4 小时前
deepseek封装结合websocket实现与ai对话
人工智能·websocket·网络协议
小李独爱秋7 小时前
计算机网络经典问题透视:当路由器需要同时连接以太网和ATM网络时,需要添加什么硬件?
运维·网络协议·计算机网络·网络安全·智能路由器
国服第二切图仔8 小时前
Rust开发之错误处理与日志记录结合(log crate使用)
网络·算法·rust
天***88969 小时前
驱动精灵、驱动人生、NVIDIA专业显卡驱动、360驱动大师、联想乐驱动,电脑驱动修复工具大全
网络·电脑·负载均衡
AORO20259 小时前
三防平板三防是指哪三防?适合应用在什么场景?
服务器·网络·智能手机·电脑·1024程序员节
王道长服务器 | 亚马逊云9 小时前
AWS + SeyouCMS:海外资源站的高性能部署实战
服务器·网络·数据库·云计算·软件构建·aws
泷羽Sec-静安9 小时前
Less-7 GET-Dump into outfile-String
android·前端·网络·sql·安全·web安全