Flask基本用法

Flask基本用法

Flask基本结构


# 引入Flask包,使得我们可以创建Flask应用实例
from flask import Flask

# 创建一个Flask应用实例。`__name__` 是Python内置变量,它表示当前模块的名称。
# 在这里,`__name__` 被传递给Flask构造函数,用于确定应用程序的基本目录(如静态文件和模板的查找路径),尤其是在多模块或包结构中。
app = Flask(__name__)

# 使用Flask的路由装饰器 `@app.route()` 来定义URL与函数之间的映射关系。
# 这里定义了一个访问路径 "/index",当用户在浏览器中访问此路径时,将触发执行下面的 `index()` 函数。
@app.route("/index")
def index():
    # 注释:`index()` 函数返回一个字符串,内容为 "这是index网页"。
    # 这是最简单的响应方式,直接向客户端返回一个纯文本消息作为网页内容。
    return "这是index网页"

# 检查当前脚本是否为直接运行的主模块(而不是被其他模块导入)。如果是,则执行以下代码。
# 这种结构确保当文件被直接运行(如通过命令行 `python app.py`)时,启动Flask应用服务器。
if __name__ == '__main__':
    # 调用 `app.run()` 方法来启动本地开发服务器。

    # 参数说明:
    #   - `host='0.0.0.0'`:设置服务器监听所有可用网络接口(包括局域网和互联网,如果防火墙允许的话),而非仅限localhost。
    #   - `port=5000`:指定服务器监听的端口号为5000。
    #   - `debug=False`:关闭调试模式。在生产环境中,通常应关闭调试模式以提升性能和安全性。
    app.run(host='0.0.0.0', port=5000, debug=False)

templates目录用于存放html文件

在flask中需要引入render_template

from flask import Flask, render_template

app = Flask(__name__)

@app.route('/register')
def register():
    return render_template('register.html')

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000, debug=False)

请求方式

GET请求

from flask import Flask, render_template, request

app = Flask(__name__)

@app.route('/register', methods=['GET'])
def register():
    return render_template('register.html')

@app.route("/do/register", methods=['GET'])
def do_register():
    get_info = request.args
    return get_info

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000, debug=True)

POST请求

@app.route("/post/register", methods=['POST'])
def post_register():
    get_info = request.form

    username = request.form.get("username")
    passwd = request.form.get("passwd")
    sex = request.form.get("sex")
    hobby_list = request.form.getlist("hobby")
    city = request.form.get("city")
    more = request.form.getlist("textarea")

    print(username, passwd, sex, hobby_list, city, more)

    return get_info


posted @ 2024-04-23 09:13  沈柏军  阅读(12)  评论(0编辑  收藏  举报