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

Flask 核心概念速览:路由、请求、响应与蓝图

一、路由参数与请求方法

Flask 路由允许定义多种参数类型,并通过 methods 属性限制请求方法。

1. 路由参数类型:
除了默认的 string,Flask 还支持:

  • int: 匹配整数,自动转换为 Python int 类型。非数字输入会返回 404。

  • float: 匹配浮点数,自动转换为 Python float 类型。

  • path: 匹配包含斜杠 / 的路径(斜杠不被视为参数分隔符),但会将其转换为字符串。

    • 区别于默认 string: string 类型会把 / 视为路径分隔符,导致参数截断。

  • uuid: 匹配符合 UUID 格式的字符串,并自动转换为 UUID 对象。严格校验格式。

  • any: 限制参数值只能是预定义元组中的一个(如 any(c,d,e)),类似于枚举。

    • 总结: Flask 的路由参数类型支持精准匹配和自动类型转换,优于 Django 默认将所有 URL 参数视为字符串。

2. 请求方法(HTTP动词):

  • 默认情况下,Flask 路由支持 GET 和 HEAD 请求。

  • 限制方法: 使用 methods 属性(列表)来指定允许的 HTTP 方法,例如 methods=['GET', 'POST']

  • HTTP 状态码: 不允许的方法请求会返回 405 Method Not Allowed 错误。

  • 常见 HTTP 方法及其语义:

    • GET: 获取资源(检索)。

    • POST: 提交/创建资源(提交数据,如表单提交)。

    • PUT: 创建或更新资源(整体替换)。

    • DELETE: 删除资源。

    • HEAD: 获取资源的元数据(如响应头),不返回响应体。

  • RESTful API 实践: 通过不同 HTTP 方法操作同一资源路径,实现高内聚,例如 /user 路径,GET 获取用户,PO

http://www.lqws.cn/news/186103.html

相关文章:

  • 深入理解二叉搜索树:原理到实践
  • LeetCode 热题 100 74. 搜索二维矩阵
  • 【Linux基础知识系列】第十四篇-系统监控与性能优化
  • 使用VSCode开发Django指南
  • npm install的原理
  • 自制喜悦字贴
  • 华为×小鹏战略合作:破局智能驾驶深水区的商业逻辑深度解析
  • Qt(part1)Qpushbutton,信号与槽,对象树,自定义信号与槽,lamda表达式。
  • 使用WebSocket实时获取印度股票数据源(无调用次数限制)实战
  • QuaggaJS用法详解
  • vue生成二维码图片+文字说明
  • Vue 组件库发布实战(含 TypeScript 支持)
  • 课消管理软件,教培机构进入系统管理时代
  • 高温IC设计带来的挑战和问题
  • 深入理解 transforms.Normalize():PyTorch 图像预处理中的关键一步
  • Javascript 编程基础(5)面向对象 | 5.1、构造函数实例化对象
  • JavaScript 原型与原型链:深入理解 __proto__ 和 prototype 的由来与关系
  • 区块链技术相关
  • 李沐《动手学深度学习》d2l安装教程
  • JS面试常见问题——数据类型篇
  • Java并发编程面试题
  • 【Android】Android Studio项目代码异常错乱问题处理(2020.3版本)
  • MySQL体系架构解析(二):MySQL目录与启动配置全解析
  • 模板方法模式:优雅封装不变,灵活扩展可变
  • API标准的本质与演进:从 REST 架构到 AI 服务集成
  • “一代更比一代强”:现代 RAG 架构的演进之路
  • 动力电池点焊机:驱动电池焊接高效与可靠的核心力量|比斯特自动化
  • Significant Location Change
  • 【Kotlin】协程
  • 【Kotlin】注解反射扩展