我们看下tornado
下的httpclient
模块有哪些类。
这个小节我们主要学习下红框中的四个类。
HTTPClient
HTTPClient
是一个同步请求的方法类,我们可以直接类比于requests
库。
我们看下官方文档的一个例子:
1 | from tornado import httpclient |
整个操作都是同步的操作。
AsyncHTTPClient
AsyncHTTPClient
是异步式的请求方式,使用协程完成请求。
我们看下官方文档的例子:
1 | async def f(): |
我们通过协程的方式来完成异步请求,不过想要完成协程的运行还是需要事件循环的。
1 | if __name__ == "__main__": |
除了使用Tornado
来实现事件循环,我们还可以使用更加底层的asyncio
1 | if __name__ == "__main__": |
异步是依赖于事件循环的,需要在事件循环中来完成异步操作。