当前位置: 首页 > news >正文

http定义了几种不同的请求方法

一、 HTTP/1.1 核心 8 种请求方法(RFC 7231 定义)
这 8 种是最基础、使用最广泛的方法,每种方法都有明确的语义和幂等性(多次执行同一请求,结果是否一致):
方法 核心语义 幂等性 常用场景
GET 从服务器获取资源 是 查询数据(如获取用户信息、商品列表)
POST 向服务器提交资源,通常会创建新资源 否 提交表单(如登录、创建订单、上传文件)
PUT 全量更新服务器上的资源(若资源不存在则创建) 是 全字段更新用户信息、替换已有资源
DELETE 删除服务器上的资源 是 删除订单、删除用户账号
HEAD 与 GET 类似,但只返回响应头,不返回响应体 是 检查资源是否存在、获取资源元信息(如文件大小)
OPTIONS 获取服务器支持的请求方法或跨域资源共享(CORS)信息 是 预检请求(如前端跨域时,先询问服务器是否允许 POST)
TRACE 回显服务器收到的请求,用于诊断 是 调试网络请求路径,生产环境通常禁用(安全风险)
CONNECT 建立隧道连接,用于代理服务器转发 HTTPS 请求 是 HTTPS 代理(如客户端通过代理访问 HTTPS 网站)
二、 扩展常用方法(2 种)
PATCH(RFC 5789 定义)
语义:部分更新服务器上的资源(区别于 PUT 的全量更新)。
幂等性:否(多次 PATCH 可能导致资源多次修改)。
场景:只更新用户的手机号,不修改其他信息。
LINK / UNLINK(较少用,RFC 2068 定义,后被废弃但部分场景仍有使用)
语义:LINK 用于建立资源之间的关联,UNLINK 用于解除关联。
目前已基本被 HTTP 头或 RESTful 设计替代。
三、 关键补充
方法的核心约束:方法的语义是 “约定”,服务器需遵守,但实际实现中可能存在差异(如部分服务器允许 POST 实现删除功能)。
幂等性的意义:幂等方法(如 GET、PUT、DELETE)可安全地重试,非幂等方法(如 POST、PATCH)重试可能导致重复创建资源(如重复下单)。
与测试工具的关联:
Fiddler 可在抓包时修改请求方法(如将 GET 改为 POST),测试接口对不同方法的响应。
JMeter 的 HTTP 请求取样器支持选择所有主流方法,用于模拟不同语义的请求压测。

http://www.jsqmd.com/news/161929/

相关文章:

  • 计算机Java毕设实战-基于SpringBoot的高校综合医疗健康服务管理系统设计与实现诊室管理、健康档案管理、学习培训管理【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • [HNOI2016] 序列
  • 从噪声中聆听信号的低语:ZYNQ如何实现实时稀疏信号重构
  • Matlab CEEMDAN-CPO-VMD-PLO-Transformer-LSTM6模型单变量时序预测一键对比
  • Conda环境名称重命名:更好地组织多个PyTorch项目
  • Matlab Simulink下的柔性直流输电系统四端网络无功补偿与电压稳定控制策略
  • GitHub Issue模板设计:高效收集PyTorch项目反馈
  • PyTorch安装教程GPU加速版:适配主流NVIDIA显卡全记录
  • AI初创团队必看:用PyTorch镜像快速构建MLOps流水线
  • 【计算机毕业设计案例】基于SpringBoot的办公管理系统设计与实现员工考勤工作任务安排(程序+文档+讲解+定制)
  • Markdown绘制流程图:清晰表达PyTorch模型结构
  • amesim一维仿真:汽车热管理、空调系统及整车热管理建模指南
  • springboot宠物医院就诊美容管理系统的设计与实现_0b2b81al
  • diskinfo SMART信息解读:判断SSD是否需要更换
  • ubuntu24.04.3关机唤醒
  • 芝麻糊SSVIP 3.1.0 | 支付宝已内置模块,无root需下载两个,自动完成蚂蚁森林,庄园任务等
  • Conda环境导入导出:跨平台迁移PyTorch项目
  • 轻松运行CNN模型:PyTorch+CUDA镜像实测性能提升5倍
  • 【视频】RK3576硬编解码库安装及使用;GStreamer测试插件详解
  • 【计算机毕业设计案例】基于java的动漫网站设计与实现基于springBoot的动漫分享系统的设计与实现(程序+文档+讲解+定制)
  • 无需手动配置!PyTorch-CUDA基础镜像支持多卡并行计算
  • springboot房屋租赁信息线上管理系统的设计与实现_7o5t2mu1
  • WebRTC 连接建立流程
  • 【论文阅读28】-ChatCNC:通过大型语言模型和实时数据检索增强生成进行对话式机器监控
  • 【毕业设计】基于springBoot的动漫分享系统的设计与实现(源码+文档+远程调试,全bao定制等)
  • PyTorch镜像预装TorchVision:计算机视觉开箱即用
  • JiyuTrainer下载与集成:基于PyTorch的可视化训练工具探索
  • 【视频】GStreamer+WebRTC(五):通过修改SDP改变webrtc数据流单双方向
  • YOLOv5模型剪枝压缩:基于PyTorch的轻量化方案
  • 电磁接收模块的噪声降低