Flask的路由讲解
简介:本文讲解,Flask怎么创建路由。
Flask项目创建参考这篇文章:通过命令行的方式快速创建一个flask项目
路由代码
基础语法
理论部分讲解:
from flask import Flask app = Flask(__name__) # 根路由,返回欢迎消息 @app.route('/') def index(): return 'Welcome to the Flask App!' # 指定路由,返回指定用户的消息 @app.route('/user/<username>') def user_profile(username): return 'Hello, {}!'.format(username) # 动态路由,接受整数参数并返回平方值 @app.route('/square/<int:num>') def square(num): return 'Square of {} is: {}'.format(num, num*num) if __name__ == '__main__': app.run(debug=True)
在上面的代码中:
- / 路由是应用程序的根路由,用于显示欢迎消息。
- /user/<username> 路由是一个动态路由,它接受一个参数 <username>,并显示该用户的消息。
- /square/<int:num> 路由也是一个动态路由,它接受一个整数参数 <num>,并返回该数字的平方值。
- 代码运行演示
Restful风格
当然,Flask 路由除了支持不同的 URL 路径外,还可以根据 HTTP 请求方法(如 GET、POST、PUT、DELETE 等)来进行路由分发。以下是一个包含不同 HTTP 请求方法的 Flask 路由示例:
from flask import Flask, request app = Flask(__name__) # GET 请求 @app.route('/hello', methods=['GET']) def hello(): return 'Hello, GET Request!' # POST 请求 @app.route('/hello', methods=['POST']) def post_hello(): name = request.form.get('name') return 'Hello, {}! This is a POST Request.'.format(name) # PUT 请求 @app.route('/hello', methods=['PUT']) def put_hello(): return 'Hello, PUT Request!' # DELETE 请求 @app.route('/hello', methods=['DELETE']) def delete_hello(): return 'Hello, DELETE Request!' if __name__ == '__main__': app.run(debug=True)
在这个示例中,我们为 /hello 路由定义了四种不同的请求方法:GET、POST、PUT 和 DELETE。根据不同的请求方法,Flask 将调用不同的函数来处理请求。GET 请求将由 hello() 函数处理,POST 请求将由 post_hello() 函数处理,以此类推。
- 运行结果演示
- Get请求
- Post请求