当前位置: 首页 > news >正文

03 Flask-添加配置信息

回顾之前学习的内容

02 Flask-快速上手

Flask 中最简单的web应用组成

1. 导入核心库 Flask

from flask import Flask

2. 实例化 web应用

注意:不要漏了 app = Flask(__name__) 中的 __name__
表示:是从当前的py文件实例化

app = Flask(__name__)

3. 创建一个路由和视图对应

@app.route('/')
def index():return 'Hello Flask!'

启动 web应用

app.run(debug=True)

完整代码

from flask import Flaskapp = Flask(__name__)@app.route('/')
def index():return 'Hello Flask!'if __name__ == '__main__':app.run(debug=True)

Flask 添加配置信息

开启 Debug

在这里插入图片描述
从上面我们可以看出 Debug 是没有开启的

为什么开启 Debug
  • 什么是 Debug?

  • Debug 有什么作用?

  • 什么是Debug?
    Debug是调试模式,在Flask中,开启Debug模式意味着应用运行在调试模式下,这允许应用在出错时提供更详细的错误信息,并且在代码修改后自动重载。

  • Debug有什么作用?
    开启Debug模式后,每次代码修改并保存后,服务器会自动重新加载应用,无需手动重启。这在开发过程中可以节省大量时间,特别是在频繁修改代码和测试时。

开启 Debug的四种方式
  • 字典键值对添加(一次只能更改一个配置项)
app.config['Debug'] = True
  • 字典update添加(一次可以添加多个配置项)
config = {'Debug': True
}
app.config.update(config)
  • 从py文件导入
# settings.py
DEBUG = True
app.config.from_pyfile('settings.py')
  • 从类里面导入
class Config:DEBUG = Trueapp.config.from_object(Config)

在这里插入图片描述

其它配置信息

我所说的开启 Debug的四种方式不止可以用来开启DEBUG,还可以添加其它配置信息
在 Flask 中,除了开启调试模式(Debug)之外,还可以添加许多其他配置信息来定制应用的行为。
以下是一些常用的配置选项:

  1. SECRET_KEY: 用于保持会话安全的密钥。在生产环境中,这个密钥应该保密。

    app.config['SECRET_KEY'] = 'your_secret_key'
    
  2. SQLALCHEMY_DATABASE_URI: 数据库连接字符串,用于 SQLAlchemy 等 ORM 工具。

    app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///your_database.db'
    
  3. SQLALCHEMY_TRACK_MODIFICATIONS: 控制 SQLAlchemy 是否跟踪对象的修改。

    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    
  4. SESSION_COOKIE_SECURE: 设置为 True 时,会话 cookie 只通过 HTTPS 发送。

    app.config['SESSION_COOKIE_SECURE'] = True
    
  5. REMEMBER_COOKIE_SECURE: 设置为 True 时,记住我 cookie 只通过 HTTPS 发送。

    app.config['REMEMBER_COOKIE_SECURE'] = True
    
  6. SESSION_COOKIE_HTTPONLY: 设置为 True 时,会话 cookie 不能通过客户端脚本访问,增加安全性。

    app.config['SESSION_COOKIE_HTTPONLY'] = True
    
  7. PERMANENT_SESSION_LIFETIME: 设置会话的过期时间。

    app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=30)
    
  8. MAIL_SERVER: 邮件服务器地址。

    app.config['MAIL_SERVER'] = 'smtp.example.com'
    
  9. MAIL_PORT: 邮件服务器端口。

    app.config['MAIL_PORT'] = 587
    
  10. MAIL_USE_TLS: 是否使用 TLS 加密。

    app.config['MAIL_USE_TLS'] = True
    
  11. MAIL_USERNAMEMAIL_PASSWORD: 发送邮件时使用的用户名和密码。

    app.config['MAIL_USERNAME'] = 'your_username'
    app.config['MAIL_PASSWORD'] = 'your_password'
    

这些配置项可以根据你的应用需求进行设置,以确保应用的安全性和功能性。在生产环境中,务必确保敏感信息(如数据库密码、密钥等)不被硬编码在代码中,而是通过环境变量或安全的配置文件来管理。

我们先大概知道这些,后面还会仔细学习

http://www.lryc.cn/news/436675.html

相关文章:

  • Codes 开源研发项目管理平台——敏捷测试管理创新解决方案
  • 耗时一个月,我做了一个网页视频编辑器
  • uniapp 做一个查看图片的组件,图片可缩放移动
  • 卡车配置一键启动无钥匙进入手机控车
  • 计算机网络基础概念 交换机、路由器、网关、TBOX
  • labview禁用8080端口
  • 字符串的KMP算法详解及C/C++代码实现
  • 2024年数学建模比赛题目及解题代码
  • BERT 论文逐段精读【论文精读】
  • 在Flask中实现跨域请求(CORS)
  • 在桌面商业分析应用程序中启用高级 Web UI
  • CentOS Stream 8 通过 Packstack 安装开源 OpenStack(V版)
  • OpenSSL工具验证RSA证书
  • 架构师白话分布式系统
  • C++ 中 vector 的常用功能介绍
  • [QT] QT事件与事件重写
  • c# 视觉识别图片文字 二维码
  • UEFI——访问PCI/PCIE设备(二)
  • 决策树算法的介绍与应用
  • 杰发科技Bootloader(3)—— 基于7801的APP切到Boot
  • Leetcode面试经典150题-138.随机链表的复制
  • freemarker模板学习笔记
  • 高亚科技与广东海悟携手,打造全流程电子竞标管理平台!
  • 240908-结合DBGPT与Ollama实现RAG本地知识检索增强
  • AMD ThinkSystem服务器上的 Linux 和 C 状态设置 - Lenovo ThinkSystem
  • Redis过期删除和缓存淘汰
  • Golang | Leetcode Golang题解之第401题二进制手表
  • TON智能合约stdlib_ext库:扩展功能一览
  • LabVIEW开发FPGA方法与FIFO数据丢失处理
  • Python中的内存池机制