python ck30期_个人笔记_Flask

一、不加路由 @app.route(“/”) 会报错,@符号不能少,如图
image

二、在Flask中,应用程序是通过app.run()来实现的,不是通过实例化类来触发的
错误的写法:
image

三、app是一个变量名称,可以用其他的变量名称,不会报错
image

四、限定类型的动态路由,没有输入限定类型时会报错

五、methods,不要忘记写,methods是一个列表,如果写了多种方式,那么每种方式都可以调用成功
此文本将被隐藏

  • 使用get方式请求

image

  • 使用post方式请求

image

六、request 方法的使用

表单请求体处理

  • 列表条目

https://flask.tutorial.hogwarts.ceshiren.com/test_platform_backend/flask/L1/tutorial/请求与响应-处理请求数据/#_3

七、Werkzeug 的版本问题
在较新版本的 Werkzeug(>= 1.0.0)中,模块的导入路径发生了变化。之前的导入方式 from werkzeug import secure_filename 已经不再推荐。相应的,应该使用 from werkzeug.utils import secure_filename

八、文件请求体处理

  1. 原始文件名称叫新建文本文档.txt,使用secure_filename(f.filename)输出后,为什么是txt?

2.文件名称在保存的时候,是可以自定义的

from flask import Flask, request
from werkzeug.utils import secure_filename
app = Flask(__name__)
@app.route("/uploads", methods=["POST"])
def file_upload():
    # 获取文件格式的请求体
    file = request.files
    print(type(file))
    print(file)
    # 获取请求参数中对应字段的值,比如file
    f = file.get("file")
    print(f)
    # 保存文件,不能使用中文名称,会报错。因为这个函数可能无法正确处理非 ASCII 字符,特别是在某些 Python 版本或环境中。可以自定义方法解决这个问题
    # f.save("./uploads/"+secure_filename("中文名称"))
    f.save("./uploads/" + secure_filename("filename"))
    return f"原始文件名称 {f.filename}  已经保存成功,被安全函数处理后保存文件名称是{secure_filename("filename")} "
if __name__ == "__main__":
    app.run()

Flask服务器仅用于开发和调试的目的。不具备处理高并发、安全保障能力,如果是上生产环境,还需要使用WSGI(web server gateway interface 网络服务器网关接口)
Flask 默认是HTTP协议

:question:
项目中开发的时候是用什么web开发框架呢,也是用Flask吗?

  • 列表条目