flaskrun命令行交互界面系统开发程序实例分析及应用

一、启动Flask1.flaskrun

Flask通过依赖包Click外置了一个CLI(CommandLineInterface,命令行交互界面)系统。当我们安装Flask后,会手动添加一个flask命令脚本,我们可以通过flask命令执行外置命令、扩展提供的命令或是我们自己定义的命令,可以执行falsk--help查看所有可用的命令。其中,flaskrun命令拿来启动外置的开发服务器。flaskrun命令运行的开发服务器会默认窃听:5000/,并开启多句柄支持。

在开发时假如我们使用的IDE是PyCharm的话,这么使用PyCharm外置的运行功能会更便捷。

如何让浏览器缓存js_浏览器缓存读取规则_让浏览器缓存js文件

2.手动发觉程序例子

后面我们可以直接flaskrun运行程序是由于Flask会按照以下规则手动侦测程序例子:

从当前目录中找寻app.py和wsgi.py模块,并从中寻求名为app或application的程序例子

从环境变量FLASK_APP对应的值寻求名为app或application的程序例子

由于我们的程序主模块是app.py,因此这儿我们执行flaskrun命令会手动从当前目录中找寻程序例子。假如我们的程序主模块是其他名称,例如说是hello.py,这么还要设置环境变量FLASK_APP,将包含程序例子的模块名形参给这个变量。

windows中使用setFLASK_APP=hello命令

让浏览器缓存js文件_浏览器缓存读取规则_如何让浏览器缓存js

linux和mac中使用exportFLASK_APP=hello命令

3.使服务器外部可见

我们在后面启动的web服务器默认是对外不可见的,在日常开发中会有同后端对接检测数据的状况,这时侯我们要在flaskrun命令后添加--host选项将主机地址设置为0.0.0.0使其对外可见。

让浏览器缓存js文件_如何让浏览器缓存js_浏览器缓存读取规则

这时服务器会窃听所有外部恳求,然而由于我们笔记本没有内网IP,所有只好网段网内的其他笔记本通过我们的网段IP访问,例如我的网段IP是192.168.1.188,当网段网内其他用户访问:5000/时,都会听到浏览器里显示“HelloFlask!”Flask提供的web服务器默认窃听的是5000端口,我们也可以在启动时传到--port参数来改变它。

让浏览器缓存js文件_浏览器缓存读取规则_如何让浏览器缓存js

其实,我们也可以通过环境变量FLASK_RUN_HOST和FLASK_RUN_PORT设置ip和端口。

让浏览器缓存js文件_浏览器缓存读取规则_如何让浏览器缓存js

二、设置运行环境

开发环境(developmentenviroment)

开发环境是指我们在本地撰写和检测程序时的计算机环境

生产环境(productionenviroment)

生产环境指的是网站布署上线供用户访问时的服务器环境

按照运行环境的不同,Flask程序、扩展以及其他程序会改变相应的行为和设置。为了辨别程序运行环境,Flask提供了一个FLASK_ENV环境变量拿来设置环境,默认为production,在我们开发时可以将其设为development,这回开启所有支持开发的特点。

如何让浏览器缓存js_浏览器缓存读取规则_让浏览器缓存js文件

若果是通过pycharm运行的话,也可以在程序主模块中通过app.config['FLASK_ENV']=development设置。

浏览器缓存读取规则_让浏览器缓存js文件_如何让浏览器缓存js

在开发环境下,调试方式(Debugmode)将被开启,这时执行flaskrun命令启动程序会手动激活Werkzeug外置的调试器(debugger)和重载器(reloader)。假如想单独控制调试器方式的继电器,可以通过FLASK_DEBUG变量设置,1为开启,0为关掉。

1.调试器

Werkzeug提供的调试器十分强悍,当程序出错时,我们可以在网页上看见具体的错误追踪信息,在调试错误时特别有用

如何让浏览器缓存js_让浏览器缓存js文件_浏览器缓存读取规则

调试器容许我们在错误页面上执行python代码,单击错误信息两侧的命令行窗口,会弹出一个窗口让我们键入PIN码,这个PIN码就是启动服务时命令行窗口复印下来的DebuggerPIN。键入PIN码以后会打开一个包含代码上下文信息的pythonshell,我们可以借助它来进行调试。

让浏览器缓存js文件_如何让浏览器缓存js_浏览器缓存读取规则

浏览器缓存读取规则_让浏览器缓存js文件_如何让浏览器缓存js

如何让浏览器缓存js_浏览器缓存读取规则_让浏览器缓存js文件

如何让浏览器缓存js_浏览器缓存读取规则_让浏览器缓存js文件

2.重载器

当我们对代码做了更改以后,期望的行为是这种改动随即作用到程序上。重载器的作用就是检查文件变动,于是再次启动开发服务器,当我们更改了代码并保存以后,会在命令行见到如下输出:

浏览器缓存读取规则_让浏览器缓存js文件_如何让浏览器缓存js

默认会使用Werkzeug外置的stat重载器,它的劣势是好点比较严重,但是精确性通常。我们可以安装另一个适于检查文件变动的python库Watchdog,安装后Werkzeug会手动使用它来检查文件变动,pipinstallwatchdog.

须要留意的是,假如项目中使用了css或js文件时,浏览器或许会缓存这种文件,以便引起对文件作出的更改不能立即生效,可以crtl+F5或shift+F5执行硬重载,即忽视缓存并重载页面

为您推荐

flaskrun命令行交互界面系统开发程序实例分析及应用

flaskrun命令行交互界面系统开发程序实例分析及应用

当我们安装Flask后,会自动添加一个flask命令脚本,我们可以通过flask命令执行内置命令、扩展提供的命令或是我...

2023-07-19 栏目:互联网+

当前非电脑浏览器正常宽度,请使用移动设备访问本站!