Python Flask框架扩展操作示例

 更新时间:2019年05月03日 10:28:03   作者:xuezhangjun  
这篇文章主要介绍了Python Flask框架扩展操作,结合实例形式分析了Python Flask-Script扩展命令行操作实现方法,需要的朋友可以参考下

本文实例讲述了Python Flask框架扩展操作。分享给大家供大家参考,具体如下:

请求上下文(request context)

Flask有两大核心:Werkzeug和Jinja2。Werkzeug实现路由、调试和Web服务器网关接口。Jinja2实现了模板。

request和response都属于请求上下文对象。
当调用app = Flask(name)的时候,创建了程序应用对象app;
request 在每次http请求发生时,WSGI server调用Flask.call();然后在Flask内部创建的request对象;
app的生命周期大于request,一个app存活期间,可能发生多次http请求,所以就会有多个request。
最终传入视图函数,通过return、redirect或render_template生成response对象,返回给客户端。

Flask装饰器路由的实现:

Flask框架是以Werkzeug为基础实现的。

Werkzeug是一个遵循WSGI协议的python函数库。其内部实现了很多Web框架底层的东西,比如request和response对象;与WSGI规范的兼容;支持Unicode;支持基本的会话管理和签名Cookie;集成URL请求路由等。

Werkzeug库的routing模块负责实现URL解析。不同的URL对应不同的视图函数,routing模块会对请求信息的URL进行解析,匹配到URL对应的视图函数,以此生成一个响应信息。

routing模块内部有Rule类(用来构造不同的URL模式的对象)、Map类(存储所有的URL规则)、MapAdapter类(负责具体URL匹配的工作);

Flask-Script扩展命令行

通过使用Flask-Script扩展,我们可以在Flask服务器启动的时候,通过命令行的方式传入参数。而不仅仅通过app.run()方法中传参,比如我们可以通过python hello.py runserver –host ip地址,告诉服务器在哪个网络接口监听来自客户端的连接。默认情况下,服务器只监听来自服务器所在计算机发起的连接,即localhost连接。

我们可以通过python hello.py runserver –help来查看参数。

from flask import Flask
from flask_script import Manager
app = Flask(__name__)
manager = Manager(app)
@app.route('/')
def index():
  return '床前明月光'
if __name__ == "__main__":
  manager.run()

希望本文所述对大家基于flask框架的Python程序设计有所帮助。

相关文章

  • python3中http协议提供文件服务器功能详解

    python3中http协议提供文件服务器功能详解

    http协议是互联网的通用基础协议,也可以利用其来开发文件服务器,给客户提供文件浏览,查看,下载,上传等功能,这篇文章主要介绍了python3中http协议提供文件服务器功能,需要的朋友可以参考下
    2023-06-06
  • python基于pyDes库实现des加密的方法

    python基于pyDes库实现des加密的方法

    这篇文章主要介绍了python基于pyDes库实现des加密的方法,结合实例形式较为详细的分析了pyDes库的下载、安装及使用pyDes库进行加密的相关操作技巧,需要的朋友可以参考下
    2017-04-04
  • Python中 CSV格式清洗与转换的实例代码

    Python中 CSV格式清洗与转换的实例代码

    这篇文章主要介绍了Python123 CSV格式清洗与转换的实例代码,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Python爬虫网页元素定位术

    Python爬虫网页元素定位术

    这篇文章主要介绍了Python爬虫网页元素定位术,文章通过Beautiful Soup模块展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05
  • 入门tensorflow教程之TensorBoard可视化模型训练

    入门tensorflow教程之TensorBoard可视化模型训练

    在本篇文章中,主要介绍 了TensorBoard 的基础知识,并了解如何可视化训练模型中的一些基本信息,希望对大家的TensorBoard可视化模型训练有所帮助
    2021-08-08
  • python 实现百度网盘非会员上传超过500个文件的方法

    python 实现百度网盘非会员上传超过500个文件的方法

    这篇文章主要介绍了python 实现百度网盘非会员上传超过500个文件的方法,帮助大家更好的利用python解决问题,感兴趣的朋友可以了解下
    2021-01-01
  • python机器学习实现决策树

    python机器学习实现决策树

    这篇文章主要为大家详细介绍了python机器学习实现决策树,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • Python学习之字符串格式化

    Python学习之字符串格式化

    这篇文章主要介绍了Python实现字符串格式化输出的方法,结合具体实例形式总结分析了Python字符串格式化输出的各种常用操作技巧,需要的朋友可以参考下
    2021-10-10
  • Python办公自动化Word转Excel文件批量处理

    Python办公自动化Word转Excel文件批量处理

    这篇文章主要为大家介绍了Python办公自动化Word转Excel文件批量处理示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • 对Python中9种生成新对象的方法总结

    对Python中9种生成新对象的方法总结

    今天小编就为大家分享一篇对Python中9种生成新对象的方法总结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05

最新评论