Flask入门:轻松掌握API路由定义

你是不是总觉得Flask路由定义复杂难记?事实上,超过80%的Python Web开发者首次接触Flask时都在路由配置上栽过跟头!
本文将从零开始讲解Flask路由的核心知识,重点演示常见API路由的定义方法,包括:

  • 基础路由配置

  • 动态URL参数处理

  • HTTP方法限定技巧

  • 完整可运行代码示例

✨ Flask路由是什么?

路由就像是Web应用的交通指挥系统,它决定了当用户访问某个URL时,应该执行哪段代码来响应请求。

🚀 基础路由定义

最简单的路由就是一个URL对应一个函数:

复制代码
@app.route('/')
def home():
    return '欢迎来到首页!'

🎯 动态路由参数

想要处理像/user/123这样的URL?使用动态参数

复制代码
@app.route('/user/<username>')
def show_user(username):
    return f'用户:{username}'

🔧 常见API路由类型

  • GET请求:获取数据

    @app.route('/api/users', methods=['GET'])
    def get_users():
    return {'users': ['张三', '李四']}

  • POST请求:创建数据

    @app.route('/api/users', methods=['POST'])
    def create_user():
    # 处理创建用户逻辑
    return {'status': '用户创建成功'}

  • 参数类型限定

    @app.route('/post/int:post_id')
    def show_post(post_id):
    return f'文章ID:{post_id}'

💡 完整代码示例

下面是一个完整的Flask应用示例:

复制代码
from flask import Flask, request

app = Flask(__name__)

@app.route('/')
def index():
    return '首页'

@app.route('/user/<username>')
def user_profile(username):
    return f'用户主页:{username}'

@app.route('/api/data', methods=['GET', 'POST'])
def handle_data():
    if request.method == 'POST':
        return {'method': 'POST', 'status': 'created'}
    return {'method': 'GET', 'data': 'some data'}

if __name__ == '__main__':
    app.run(debug=True)

喜欢本文?点赞👍收藏⭐,关注我,一起学习更多有用的知识,完善你的技能树!

相关推荐
m0_7364393019 小时前
如何防止SQL非法金额输入_利用触发器实现精确度校准
jvm·数据库·python
麻雀飞吧19 小时前
期货量化多周期策略实践:主趋势过滤与入场触发协同
python
小张同学82419 小时前
Python并发编程实战用多线程和协程加速智能体执行效率
开发语言·人工智能·python
2301_8159019719 小时前
HTML函数在4K显示器上显示异常吗_高分辨率硬件适配问题【详解】
jvm·数据库·python
WL_Aurora19 小时前
【每日一题】前缀和
python·算法
盼小辉丶19 小时前
PyTorch强化学习实战(4)——PyTorch基础
人工智能·pytorch·python·强化学习
YJlio19 小时前
10.2.8 以其他账户运行服务(Running services in alternate accounts):为什么“把服务切到某个用户账号下运行”,本质上是在改变服务的整个安全上下文?
python·安全·ios·机器人·django·iphone·7-zip
运气好好的19 小时前
CSS如何实现响应式内边距自适应_利用vw单位动态调整
jvm·数据库·python
钛态20 小时前
前端TypeScript高级技巧:让你的代码更安全
前端·vue·react·web
技术钱20 小时前
LangChain简介
python·langchain