tornado的异步例子请教

新手上路,请多包涵

from tornado.httpclient import AsyncHTTPClient

def asynchronous_fetch(url, callback):

http_client = AsyncHTTPClient()
def handle_response(response):
    callback(response.body)
http_client.fetch(url, callback=handle_response)

asynchronous_fetch("http://127.0.0.1:8000")

异步里面有这么一个例子。其中callback是一个参数,应该是一个外部函数调用,可是里面又设定callback=handle_response,这里callback是什么作用?

阅读 2.4k
3 个回答

fetch -> handle_response -> callback
fetch的callback也就是handle_response处理的是response
而asynchronous_fetch的callback处理的是response的body
加这一层估计是为了做些额外的处理吧。

python中函数的命名调用,写为http_client.fetch(url, handle_response)也可以

你代码格式整理一下,还有能给个原文地址?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题