聊天室项目之http知识

一.http的核心组成部分(都分成请求的和响应的)

1.起始行:请求------------------------

  • 方法(Method)GETPOSTPUTDELETE 等。

  • 请求目标(Request Target) :URL 路径和查询字符串(如 /path?query=1)。

  • 协议版本HTTP/1.1HTTP/1.2

响应------------------------------------

  • 协议版本HTTP/1.1

  • 状态码(Status Code)200(成功)、404(未找到)等。

  • 状态文本OKNot Found 等。

2.头部

  • 常见请求头

    • Host:目标域名。

    • Content-Type:请求体的数据类型(如 application/json)。

    • Authorization:认证信息(如 Bearer token)。

  • 常见响应头

    • Content-Length:响应体的长度。

    • Set-Cookie:设置客户端 Cookie。

3.空行

  • 作用 :分隔头部和消息体,仅包含 \r\n。例子如下

    http

  • Headers...

  • \r\n

  • Body...

4.消息体(Body)

总结:请求方法 + URL + 头部 + 空行 + 消息体

响应协议版本 + 状态码 + 头部 + 空行 + 消息体

个人知识补充

其中URL统一资源定位符,也就是平常说的网址,我们在接受读取参数前要对其进行编码和解码,因为为其没有中文字符,如果直接读取会导致读取错误

相关推荐
2501_915909061 天前
tcpdump 抓包数据分析实战,命令、过滤、常见故障定位与真机补充流程
网络·测试工具·ios·小程序·uni-app·iphone·tcpdump
路由侠内网穿透1 天前
本地部署开源持续集成和持续部署系统 Woodpecker CI 并实现外部访问
服务器·网络·windows·ci/cd·开源
光储圈1 天前
光伏安全协议-安全责任协议书8篇
网络·安全
时空潮汐1 天前
神卓 N600:内网穿透需求的高效安全之选
网络·安全·群晖nas·神卓n600
爱倒腾的老唐1 天前
24、Linux 路由管理
linux·运维·网络
程序员Aries1 天前
自定义网络协议与序列化/反序列化
linux·网络·c++·网络协议·程序人生
FIavor.1 天前
我发送给Apifox是http://localhost:9002/goods/getByUserName?name=张三 为什么会是500哪里错了?
java·服务器·网络协议·http
IT大灰狼1 天前
拌合站软件开发(27)监测各项IP设备可访问性
网络·网络协议·tcp/ip
周之鸥1 天前
从零部署 Astro 静态网站到云服务器(含 HTTPS 一键配置)
运维·服务器·ubuntu·http·https·astro
FIavor.1 天前
怎么办这是Apifox里执行http://localhost:9002/goods/getByUserName?name=“张三“为什么我改了还是500?
java·网络·网络协议·http