You are here
Home > python > flask

flask 0x01 启动项目

环境:

windows10 + anaconda + spyder + flask

  • Python 3.7.3
  • Flask 1.0.3
  • Werkzeug 0.15.4

anaconda + flask

anaconda 

直接去官网下载,注意选择正确的版本

flask

anaconda 本来带flask;从开始菜单以[管理员身份]运行 Anaconda Prompt,在其中输入

conda upgrade    --all

先升级一下所有包,再通过

conda list

列出所有安装的包,如果只是查flask,可以使用

conda list|findStr flask

创建环境

conda create -n py3 flask

然后,等一丢丢时间,输入y继续安装

激活环境

 $ conda activate py3

离开环境

$ conda deactivate

创建flask 项目

创建文件夹,然后创建 app.py

写入测试代码:

from flask import Flask

app=Flask(__name__)

@app.route('/')
def hello_world():
    return 'hello flask'

启动项目

set FLASK_APP=temp.py
flask run

(在 linux 下需要使用 export 来代替 set 。)

或者代码改成:

from flask import Flask

app=Flask(__name__)
app.debug=True

@app.route('/')
def hello_world():
    return 'hello flask'

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

直接运行

python app.py

调试模式

如果需要打开所有开发功能(包括调试模式),那么要在运行服务器之前导出 FLASK_ENV 环境变量并把其设置为 development:

$ set FLASK_ENV=development
$ flask run

(在 linux 下需要使用 export 来代替 set 。)

或者在代码中配置

from flask import Flask

app=Flask(__name__)
app.debug=True

@app.route('/')
def hello_world():
    return 'hello flask'

if __name__=="__main__":
    app.run(debug=True)   # 也可以在app.run之前写 app.debug=True

然后直接启动脚本:

python app.py

开发环境: 包括交互调试器和重载器

外部访问

flask run --host=0.0.0.0

或者

app.run(host='0.0.0.0')

注意:

尽管交互式调试器在允许 fork 的环境中无法正常使用(也即在生产服务器上正常使用几乎是不可能的),但它依然允许执行任意代码。这使它成为一个巨大的安全隐患,因此它 绝对不能用于生产环境

发表评论

Top