栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

当AsyncHTTPClient接收块时,龙卷风流式HTTP响应

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

当AsyncHTTPClient接收块时,龙卷风流式HTTP响应

装饰您的方法,

gen.coroutine
并产生一个期货列表。这是一个简单的例子:

from tornado import gen, web, httpclientclass StreamingHandler(web.RequestHandler):    @web.asynchronous    @gen.coroutine    def get(self):        client = httpclient.AsyncHTTPClient()        self.write('some opening')        self.flush()        requests = [ httpclient.HTTPRequest(     url='http://httpbin.org/delay/' + str(delay),     streaming_callback=self.on_chunk ) for delay in [5, 4, 3, 2, 1]        ]        # `map()` doesn't return a list in Python 3        yield list(map(client.fetch, requests))        self.write('some closing')        self.finish()    def on_chunk(self, chunk):        self.write('some chunk')        self.flush()

请注意,即使请求是“向后”产生的,第一个块仍将在大约一秒钟后收到。如果您同步发送它们,则需要15秒。当您异步请求它们时,只需花费5。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/648713.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号