Flask -- (7)从 Hello World 开始 -- Flask程序的运行过程

从 Hello World 开始 – Flask程序的运行过程

所有Flask程序必须有一个程序实例。

当客户端想要获取资源时,一般会通过浏览器发起HTTP请求。

此时,Web服务器使用WSGI(Web Server Gateway Interface)协议,把来自客户端的所有请求都交给Flask程序实例,程序实例使用Werkzeug来做路由分发(URL请求和视图函数之间的对应关系)。

根据每个URL请求,找到具体的视图函数并进行调用。

  • 在Flask程序中,路由的实现一般是通过程序实例的装饰器实现。

Flask调用视图函数后,可以返回两种内容:

  • 字符串内容:将视图函数的返回值作为响应的内容,返回给客户端(浏览器)

  • HTML模版内容:获取到数据后,把数据传入HTML模板文件中,模板引擎负责渲染HTTP响应数据,然后返回响应数据给客户端(浏览器)

示例

新建文件 hello.py

导入 Flask 类

from flask import Flask

Flask 函数接收到一个参数 name,它会指向程序所在的模块

app = Flask(__name__)

装饰器的作用是将路由映射到视图函数index

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

Flask应用程序实例的run方法启动WEB服务器

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

在程序运行过程中,程序实例中会使用 url_map 将装饰器路由和视图的对应关系保存起来,打印结果如下图:

初始化参数

  • import_name: 模块名
  • static_url_path: 静态文件访问前缀
  • static_folder: 默认‘static’
  • template_folder: 默认‘templates’

配置参数

  • app.config.from_pyfile() # 从配置文件中加载
  • app.config.from_object() # 从对象中加载
  • app.config.from_envvar() # 从环境变量中加载

读取配置参数

  • app.config.get()
  • 在视图中 current_app.config.get()

app.run 的参数

app.run(host=”0.0.0.0”, port=5000, debug = True)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值