• 一个Flask运行分析


    当我们安装好Flask环境之后,创建好项目,就会自动生成下面这段代码:

    from flask import Flask
    
    app = Flask(__name__)
    
    
    @app.route('/')
    def hello_world():
        return 'Hello World!'
    
    
    
    if __name__ == '__main__':
        app.run()

    运行这段代码,然后通过浏览器访问http://127.0.0.1:5000/ 页面上就会渲染 Hello World,这就是我们进入Flask世界的第一个相许。

    一些准备知识

    在正式分析Flask之前,有一些准备知识需要先了解一下:

    1. 使用Flask框架开发的属于Web应用。由于Python使用WSGI网关,所以这个应用也可以叫WSGI应用;
    2. 服务器、Web应用的设计应该遵循网关接口的一些规范。对于WSGI网关,要求Web应用实现一个函数或者一个可调用对象webapp(environ, start_response)。服务器或网关中要定义start_response函数并且调用Web应用。关于这部分的内容可以参考:wsgiref包——符合WSGI标准的Web服务实现(一)
    3. Flask依赖于底层库werkzeug。相关内容可以参考:Werkzeug库简介

    实例化一个Flask应用

    使用 app = Flask(__name__),可以实例化一个Flask引用,实例化的Flask要注意亦一下几点:

    1. 对于请求和响应的处理,Flask使用werkzeug库中的request类和response类,
    2. 对于URL模式的处理Flask应用使用werkzeug库中的Map和Rule类,每个URL模式对应一个RUle实例,这些RUule石磊最终作为参数传递给Map类狗仔包含URL模式的一个映射表。
    3. 当实例化一个Flask应用app(这个应用的名字可以随便定义)之后,对于如何添加URL模式,Flask采取了一种更加优雅的模式,对于这点可以和Django的做法进行比较。Flask采取装饰器的方法,将URL规则和视图函数结合在一起写,其中主要的函数是route。在@app.route("/")
      1. @app.route('/')
        def index():
            pass
         这样写视图函数,会将'/'这条URL规则和视图函数index()联系起来,并且会形成一个Rule实例,再添加进Map实例中去。当访问'/'时,会执行index()。关于Flask匹配URL的内容,可以参考后续文章 
    4. dddd
  • 相关阅读:
    linux 环境变量恢复默认值
    怎么查看Eclipse的版本信息
    掌握HDFS的Java API接口访问
    【代理】代理概念
    【DbUtils】轻量级的ORM学习
    【mysql】相关记录
    JWT(JSON Web Tokens)
    将jar包安装到本地仓库
    Spring集成rabbitmq
    spring-rabbit包的引入需要注意的事项
  • 原文地址:https://www.cnblogs.com/richiewlq/p/8205886.html
Copyright © 2020-2023  润新知