
python flask
我不喜欢这个世界
我的指尖有改变世界的力量。
展开
-
flask中send_file模块返回现生成的缓存文件流txt,不用先创建txt文件再读取
@app.route('/')def index(): file = BytesIO() file.write(('\n'.join([str(i)for i in range(0,10000)]).encode())) file.seek(0) return send_file(file, as_attachment=True, attachment_filename=time.strftime("xxx.txt" )z原创 2021-06-18 11:08:54 · 1612 阅读 · 0 评论 -
python flask中config配置管理问题
在项目中我们需要配置各种环境。 如果我们的配置项很少的话, 可以直接简单粗暴的来; 比如:app =Flask(__name__)app.config['DEBUG']=Trueapp.config其实是实例化了flask.config.Config类的实例, 继承于python内置数据结构dict字典,可以使用update方法:app.config.update(DEBUG=true,原创 2017-11-29 21:31:58 · 11954 阅读 · 0 评论 -
pyhton flask中调试模式的使用
我们可以直接app.run的方式启动本地服务器, 但是当我们每次修改代码还需要手动重启, 很不方便, 此时我们可以启动调试模式,服务器会在 我们的代码修改后, 自动重新载入,有错误的话会提醒, 两种方式可以开启, 1)直接在对象上设置app.debug=Trueapp.run()2)作为run的参数传入进去app.run(debug=True)但是我们应该注意,调试模式下会有很大的安原创 2017-11-30 12:54:39 · 6363 阅读 · 2 评论 -
python flask中动态URL规则
URL是可以添加变量部分的, 把类似的部分抽象出来, 比如:@app.route('/example/1/')@app.route('/example/2/')@app.route('/example/3/')def example(id): return 'example:{ }'.format(id)可以抽象为:@app.route('/example/<id>/')def原创 2017-11-30 20:11:56 · 3524 阅读 · 1 评论 -
python flask中HTTP方法methods=['GET','POST']
HTTP有很多URL方法的。 默认路由只回应GET请求,但是 我们可以在装饰器app.route中 传递methods参数改变请求方式,@app.route('/login/',methods=['GET','POST'])@app.route('/login/<id>',methods=['GET','POST'])如果有GET的存在,那么也会自动添加HEAD的方法。 Flask0.6起原创 2017-11-30 20:24:36 · 32441 阅读 · 0 评论 -
Linux下使用Gunicorn部署flask项目
Gunicorn很容易配置,对cpu的消耗很少,且兼容性好。 支持了很多Worker模式,推荐的模式有以下几种:同步Worker:也是默认模式,也就是一次只处理一个请求。 异步Worker:通过Eventlet、Gevent实现的异步模式。 异步IO Worker:目前支持gthread和gaiohttp两种类型。首先需要安装Gunicorn $ pip install gunicorn然后原创 2017-12-01 13:55:57 · 3432 阅读 · 1 评论 -
python flask唯一URL规则
Flask的URL规则基于werkzeug的路由模块, 用来保证URL的唯一性。例如:@app.route('/example/')def example(): return 'ok'如果访问一个结尾不带斜线的URL会被重定向到斜线的URL上。 (/example)变为(/example/)如果不带斜线:@app.route('/index')def index(): ret原创 2017-12-02 15:04:22 · 1258 阅读 · 0 评论 -
python中用url_for构造URL
用url_for构造URL,他接受函数名作为第一个参数, 也接受对应URL规则的变量部分的命名参数, 未知的变量部分会添加到URL末尾作为查询参数。 构建URL而不选择直接在代码中拼URL的原因有两点: 1)在未来有更改的时候只需要一次性修改URL,而不用到处替换; 2)URL构建会转义特殊字符和Unicode数据, 这些工作不需要我们自己处理。下面是个例子:from f转载 2017-12-04 00:31:21 · 5231 阅读 · 1 评论 -
python flask中静态文件的管理
Web应用中大多会提供静态文件服务以便给用户更好的访问体验。 静态文件主要包含CSS样式文件,js脚本,图片和字体等。 Flask也支持静态文件访问的,默认情况下只需在项目根目录下, 创建名为static的目录,在应用中使用‘/static’开头的路径就 可以访问了。但是为了获得更好的处理能力,推荐使用Nginx 或者其他服务器管理静态文件。 不要直接在模板中写死静态文件路径,应该使用u原创 2017-12-04 23:01:05 · 10617 阅读 · 2 评论