
flask
文章平均质量分 70
mofei12138
这个作者很懒,什么都没留下…
展开
-
在Flask中使用line_profiler分析代码性能
当使用Flask进行Web开发,发现接口响应较慢或者超时的时候,我们可以借助性能分析工具line_profiler来查看每行代码的执行时间,从而找到原因。原创 2023-11-12 19:03:33 · 693 阅读 · 0 评论 -
Flask源码分析(三):上下文的作用和实现原理
在了解上下文之前,先要弄清楚Local、LocalStack、LocalProxy这三个概念。......程序中的上下文代表了程序当下所运行的环境,存储了一些程序运行的信息。原创 2022-07-10 19:18:27 · 467 阅读 · 0 评论 -
Flask源码解析(二):Flask的工作原理
本文通过解析Flask0.1的源码,讲解一下Flask框架的主要工作原理,包括启动应用,请求处理,路由,异常处理。原创 2022-04-23 16:19:48 · 1517 阅读 · 0 评论 -
Flask源码解析(一):WSGI
要理解 Flask 的源码,必须有一定的 Python 基础,要熟悉 decorator、magic method、iterator、generator 的概念和用法。还有一点是必须理解 WSGI,下面就讲解一些和 WSGI 相关的概念以及用一些代码来帮助理解 WSGI。原创 2022-03-26 18:47:44 · 1298 阅读 · 0 评论 -
在PyCharm中调试celery、gunicorn
如何在PyCharm中调试celery程序和以gevent模式运行的gunicorn程序。原创 2022-01-17 22:33:56 · 3421 阅读 · 1 评论 -
在Flask中的一种无需生成zip文件的下载方式
背景在Flask中对文件进行归档并下载时,一般会使用zipfile库。由于zipfile库必须先生成zip文件再进行下载,所以当生成的zip文件较多且较大时,会逐渐消耗磁盘的容量。为了避免这种情况,我们可以使用zipstream库。使用zipstream库zipstream可以不生成zip文件,直接下载:@app.route('/package.zip', methods=['GET'], endpoint='zipball')def zipball(): z = zipstream.Zi原创 2021-05-17 18:24:39 · 1151 阅读 · 0 评论 -
在flask-restplus下统一接口返回格式
在flask-restplus下统一接口返回格式背景在使用flask+flask-restplus时,业务正常时接口函数返回一个可以json序列化的对象@ns.route('/hello')class Hello(Resource): def get(self): return ['hello', 'hi']接口返回内容如下:[ "hello", "hi"]当业务异常(比如检测到参数错误)时,一般调用abort函数,它会抛出一个HTTPExcept原创 2020-07-04 17:12:03 · 3003 阅读 · 0 评论 -
flask-socketio配置websocket步骤
Flask-SocketIO异步服务的选择Flask-SocketIO模块所依赖的异步服务有3个选择eventlet是性能最好的选项,并支持长轮询和WebSocket传输 gevent支持许多不同的配置。gevent支持长轮询,但不像eventlet,gevent并没有原生支持WebSocket。为了能支持WebSocket,有两种方案:一、安装 gevent-websocket 的方式...原创 2019-11-30 23:25:56 · 1101 阅读 · 0 评论 -
在flask中同步调用celery.task函数报错分析
问题介绍为方便理解,简单说明一下项目,项目中使用的依赖模块有:flask,flask-sqlalchemy,flask-celery等等。在同步方式调用task函数的时候出现了DetachedInstanceError的异常。出错的代码如下(已简化):def func(): user = User.query.first() task_func() print...原创 2019-10-29 15:43:10 · 875 阅读 · 0 评论