示例:
假设你有一个URL:http://example.com/search?q=flask
你可以这样读取q参数:

from flask import Flask, request app = Flask(__name__) @app.route('/search') def search(): q = request.args.get('q', '') # 第二个参数是默认值,如果q不存在则默认为空字符串 return f'You searched for {q}' if __name__ == '__main__': app.run(debug=True)
2. 路径参数
路径参数是URL路径中的一部分,用于指定资源的层次构造。在Flask路由中,你可以利用<variable_name>来定义路径参数,并在视图函数中通过位置参数或关键字参数吸收它们。
示例:
假设你有一个URL:http://example.com/user/123
你可以这样定义路由和视图函数来读取123这个路径参数:
from flask import Flask app = Flask(__name__) @app.route('/user/<int:user_id>') # 把稳<int:user_id>,它见告Flask这个参数该当是整数类型 def user_profile(user_id): return f'User ID is {user_id}' if __name__ == '__main__': app.run(debug=True)
在这个例子中,<int:user_id>表示user_id是一个整数类型的路径参数。Flask会自动将路径中的相应部分转换成整数并通报给user_profile函数。你也可以利用<string:variable_name>来匹配任何不包含/的文本,而不进行类型转换。
总结利用request.args.get('参数名', 默认值)来读取查询字符串参数。在路由定义中利用<类型:变量名>来定义路径参数,并在视图函数中通过位置参数或关键字参数吸收它们。