二、学习 Flask之二

news/2024/10/20 19:00:12/

二、学习 Flask之二

文章目录

  • 二、学习 Flask之二
    • 安装 Flask
    • 创建 Flask 应用程序
    • 常用的 Flask 配置

Flask 是一个基于 Python 的轻量级 Web 框架,它简单易用、灵活性强,非常适合初学者入门和快速开发小型 Web 应用。本文将介绍 Flask 的安装和常用的配置。

安装 Flask

安装 Flask 只需几个简单的步骤:

  1. 打开命令行终端(Command Prompt)或终端(Terminal)。

  2. 使用 pip 包管理工具执行以下命令进行 Flask 的安装:

    pip install flask
    

这将自动下载并安装 Flask 及其相关依赖。

创建 Flask 应用程序

在安装完成 Flask 后,我们可以创建一个简单的 Flask 应用程序来验证安装是否成功。按照以下步骤创建一个 Hello World 的 Flask 应用:

创建一个新的 Python 文件,例如 app.py。

在文件中导入 Flask 模块并创建一个 Flask 应用实例:

from flask import Flaskapp = Flask(__name__)

这里的 name 是 Python 中的一个特殊变量,表示当前模块的名称。

定义一个路由,用于处理根路径的请求并返回 Hello World 的字符串:

@app.route('/')
def hello():return 'Hello, World!'

在文件的末尾添加以下代码来运行应用:

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

保存文件并在命令行终端中执行以下命令启动应用:

python app.py

如果一切正常,你将看到类似以下输出:

 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

在浏览器中访问 http://127.0.0.1:5000/,你将看到显示 “Hello, World!” 的页面。

常用的 Flask 配置

Flask 提供了一些常用的配置选项,可以根据应用的需求进行配置。以下是一些常见的配置选项示例:

app = Flask(__name__)# 设置调试模式
app.debug = True# 设置密钥
app.secret_key = 'your_secret_key'# 配置数据库连接字符串
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db'# 配置数据库追踪修改
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False# 配置静态文件路径
app.static_folder = 'static'# 配置文件上传路径
app.config['UPLOAD_FOLDER'] = '/path/to/upload/folder'# 配置最大上传文件大小
app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024  # 16MB# 配置邮箱发送参数
app.config['MAIL_SERVER'] = 'smtp.example.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USERNAME'] = 'your_email@example.com'
app.config['MAIL_PASSWORD'] = 'your_email_password'# 配置日志记录
import logging
from logging.handlers import RotatingFileHandlerhandler = RotatingFileHandler('app.log', maxBytes=1024 * 1024, backupCount=5)
handler.setLevel(logging.INFO)
app.logger.addHandler(handler)
# 配置缓存
app.config['CACHE_TYPE'] = 'simple'  # 可选项:'null', 'simple', 'memcached', 'redis', 等# 配置国际化
from flask_babel import Babelbabel = Babel(app)
app.config['BABEL_DEFAULT_LOCALE'] = 'en'  # 默认语言
app.config['BABEL_SUPPORTED_LOCALES'] = ['en', 'fr', 'es']  # 支持的语言列表# 配置安全性
app.config['SESSION_COOKIE_SECURE'] = True
app.config['SESSION_COOKIE_HTTPONLY'] = True
app.config['SESSION_COOKIE_SAMESITE'] = 'Lax'
app.config['CSRF_ENABLED'] = True
app.config['CSRF_SESSION_KEY'] = 'your_csrf_session_key'# 配置 API 密钥
app.config['API_KEY'] = 'your_api_key'# 配置数据库连接池大小
app.config['SQLALCHEMY_POOL_SIZE'] = 10# 配置跨域资源共享 (CORS)
from flask_cors import CORSCORS(app)

这些配置选项包括了 API 密钥、数据库连接池大小、跨域资源共享 (CORS) 等方面的设置。你可以根据你的实际需求,在 Flask 应用中选择并配置这些选项。


http://www.ppmy.cn/news/66132.html

相关文章

IS210WSVOH1AE直流发电机的种类 ? 直流发电机中换向器的用途

​ IS210WSVOH1AE直流发电机的种类 ? 直流发电机中换向器的用途 什么是直流发电机 通过使用直流发电机,我们可以发电,发电机 4个作用是将机械能转化为电能。直流发电机主要用于特殊应用或本地发电,直流发电机的运行特性非常重要,…

MySQL 删除数据表

MySQL 删除数据表 MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。 语法 以下为删除MySQL数据表的通用语法: DROP TABLE table_name ;在命令提示窗口中删除数据表 在mysql&…

一种用于提高无线传感器网络寿命的改进LEACH协议(Matlab代码实现)

目录 💥1 概述 📚2 运行结果 🎉3 参考文献 👨‍💻4 Matlab代码 💥1 概述 无线传感器网络具有网络灵活性强、网络规模可变等优点,广泛应用于军事、工业等领域。无线传感器网络的基本网络路由…

Android工程师复盘小米、滴滴的面试全过程,网易offer已收入囊中

背景 时间过的真快,16年毕业到现在也有好几年了,最近面试试着投了几十家Android framework工程师的岗位,也面试了好几家,其中包括滴滴出行、小米、合众新能源、网易、最终收到了网易和滴滴offer,小米二面挂掉&#xf…

Ubuntu18.04 制作系统ISO镜像并物理机还原(Systemback)

简单记录使用Systemback工具打包Ubuntu系统得到iso镜像文件,并在物理机上进行还原(安装)的流程。测试结果发现,使用打包的iso文件安装得到的Ubuntu系统继承了我之前的Ubuntu系统,包括并不限于如下内容:Home…

如何恢复移动硬盘数据

如何恢复移动硬盘数据?无论是工作还是学习,都会接触到各种数据文件,这就让我们的数据文件存储的需求增大。在我们自身存储空间不够时,可以借助外援,比如说可以用移动硬盘来存储平时产生的数据。但偶尔也会遇到移动硬盘数据丢失的…

为什么hooks不能在循环、条件或嵌套函数中调用

hooks不能在循环、条件或嵌套函数中调用 为什么&#xff1f; 带着疑问一起去看源码吧&#xff5e; function App() {const [num, setNum] useState(0);const [count, setCount] useState(0);const handleClick () > {setNum(num > num 1)setCount(2)}return <p …

AcWing算法提高课-1.3.9庆功会

宣传一下算法提高课整理 <— CSDN个人主页&#xff1a;更好的阅读体验 <— 本题链接&#xff08;AcWing&#xff09; 点这里 题目描述 为了庆贺班级在校运动会上取得全校第一名成绩&#xff0c;班主任决定开一场庆功会&#xff0c;为此拨款购买奖品犒劳运动员。 期望…