• python基础===flask使用整理(转)


    flask 使用的一些整理

    资源

    Flask 文档|英文expore flask快速教材flask-adminFlask-DebugToolbarFlask-LoginFlask-Cache|flask-sqlalchemyflask-securityFlask-makoFlask-GenshiWTForms

    Flask Extensions


    最简单的hello world

    之后,访问http://localhost:5000

    支持post/get提交

    多个url指向

    不管post/get使用统一的接收

    处理json请求

    request的header中

    处理时:

    获取post提交中的checkbox

    使用url中的参数

    在request开始结束dosomething

    一般可以处理数据库连接等等

    注册Jinja2模板中使用的过滤器

    或者

    可以这么用

    注册Jinja2模板中使用的全局变量

    定义应用使用的template和static目录

    使用Blueprint

    实例:

    使用session

    包装cookie实现的,没有session id

    反向路由

    上传文件

    接收

    直接返回某个文件

    请求重定向

    文档

    flask.redirect(location, code=302) the redirect status code. defaults to 302.Supported codes are 301, 302, 303, 305, and 307. 300 is not supported.

    获取用户真实ip

    从request.headers获取

    或者, 使用werkzeug的middleware 文档

    return json & jsonp

    配置读取方法

    几个不常用的方法

    异步调用

    想在flask的一个请求中处理异步, 除了使用消息系统, 可以用简单的线程处理

    error handler

    项目配置

    1.直接

    2.环境变量

    3.对象

    4.文件

    EG. 一个create_app方法

    Python
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    from flask import Flask, g
     
    def create_app(debug=settings.DEBUG):
        app = Flask(__name__,
                    template_folder=settings.TEMPLATE_FOLDER,
                    static_folder=settings.STATIC_FOLDER)
     
        app.register_blueprint(bp_test)
     
        app.jinja_env.globals.update(JINJA2_GLOBALS)
        app.jinja_env.filters.update(JINJA2_FILTERS)
     
        app.secret_key = 'PO+_)(*&678OUIJKKO#%_!(((%)))'
     
        @app.before_request
        def before_request():
            g.xxx = ...    #do some thing
     
        @app.teardown_request
        def teardown_request(exception):
            g.xxx = ...    #do some thing
     
        return app
     
    app = create_app(settings.DEBUG)
    host=settings.SERVER_IP
    port=settings.SERVER_PORT
    app.run(host=host, port=port)
  • 相关阅读:
    内网渗透中命令行下文件分卷压缩
    Windows&Linux重置nessus的密码
    mac 安装zmap
    Java的几种时间
    Hadoop-MR实现日志清洗(四)
    Hadoop-MR实现日志清洗(三)
    Hadoop-MR实现日志清洗(二)
    Hadoop-MR实现日志清洗(一)
    关于Hive正则技术处理比较规范的日志数据
    创建一个普通的Java项目,编写MapReduce程序
  • 原文地址:https://www.cnblogs.com/botoo/p/7690649.html
Copyright © 2020-2023  润新知