首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django 1.5 -使用新的StreamingHttpResponse

Django 1.5 -使用新的StreamingHttpResponse
EN

Stack Overflow用户
提问于 2013-03-12 19:21:18
回答 1查看 9.2K关注 0票数 7

如果我实现了StreamingHttpResponse as shown here,直到10秒后才会显示'streaming‘响应。关于djangoproject的信息不多,只是说它对生成大型CSV文件很有用,同时警告说,昂贵的任务应该在请求-响应周期之外执行。

然而,我看不到它在使用时间密集型代码时是完全有效的。是不是生成器对象有什么东西阻止了这一点?下面是复制的代码以供参考。

代码语言:javascript
复制
import time
from django.http import StreamingHttpResponse

def stream_response(request):
    resp = StreamingHttpResponse(stream_response_generator())
    return resp

def stream_response_generator():
    for x in range(1,11):
        yield '{} <br />\n'.format(x)
        time.sleep(1)
EN

回答 1

Stack Overflow用户

发布于 2014-11-20 21:37:52

OP的解决方案转换为下面的答案

Pavel的评论指出,我的例子的问题是浏览器的缓冲,这是通过修改发送的数据量来解决的,例如

代码语言:javascript
复制
yield '{} <br /> {}'.format(x, ' '*1024)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15359768

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档