tornado内使用Future中数据用什么方法,tornadofuture,tonado官方文档(h
tornado内使用Future中数据用什么方法,tornadofuture,tonado官方文档(h
tonado官方文档(http://www.tornadoweb.org/en/stable/gen.html)
可以通过定义以下方法获取异步返回值:
@gen.coroutine
def fetch_json(url):
response = yield AsyncHTTPClient().fetch(url)
raise gen.Return(json_decode(response.body))
但是以下代码调用fetch_json方法,得到一个数据(tornado.concurrent.Future),在get方法里面怎么获取返回的response.body的值?
class TestHandler(BaseHtHandler):
@asynchronous
def get(self):
log.info("TestHandler.get")
self.set_header("Access-Control-Allow-Origin", "*")
response=self.fetch_json("http://www.baidu.com")
self.finish()
from tornado.web import RequestHandler, Application, asynchronousfrom tornado.ioloop import IOLoopfrom tornado.httpserver import HTTPServerfrom tornado import genfrom tornado.httpclient import AsyncHTTPClientclass IndexHandler(RequestHandler): @asynchronous @gen.coroutine def get(self): response = self.fetch_json('http://www.qq.com') result = yield response self.write(result) self.finish() @gen.coroutine def fetch_json(self, url): response = yield AsyncHTTPClient().fetch(url) raise gen.Return(response.body)app = Application([('/', IndexHandler)], debug = True)http_server = HTTPServer(app)http_server.listen(1888)IOLoop.instance().start()
编橙之家文章,
相关内容
- Python遍历字符时将汉字和英文字符看成等同怎么写,
- Python哪个模块适合处理大量定时任务数据,python模块
- Python django haystack保存数据报SpatialError如何破,djangosp
- 请问django是并发吗?数据库操作要考虑线程安全吗,,我
- Python有CDict吗还是dict代替了,cdictdict,在python中导入模块
- Python验证socks5服务器有效性有什么方法,pythonsocks5,日前
- Python什么方法可以判断是否在某个时间范围内,python范
- 想使用Python语言写个Linux环境下可视界面求指点,pyth
- Python元组列表怎么计算每个item指定单元最快捷方式,
- Python清理计算过程中占用内存数据问题,python鍗犵敤鍐
评论关闭