forked from mirrors/gecko-dev
		
	 a1ee478054
			
		
	
	
		a1ee478054
		
	
	
	
	
		
			
			Note that, as part of adding this packages to the automated vendoring system, some dependencies were automatically added - most notably, dependencies of `taskcluster` that become visible with Python 3.6+. Also, adds `**/.git` to the exclusions because: * `.git` is part of our `.hgignore`, but * `.git` is part of the `aiohttp` `tar.gz` file. Since the file isn't needed for `pip install`-ing `aiohttp`, and since we want `./mach vendor python` to be a no-op when there's no requirement changes, we exclude it. Differential Revision: https://phabricator.services.mozilla.com/D123122
		
			
				
	
	
		
			35 lines
		
	
	
	
		
			933 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
	
		
			933 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
| #!/usr/bin/env python3
 | |
| 
 | |
| import argparse
 | |
| import asyncio
 | |
| 
 | |
| import aiohttp
 | |
| 
 | |
| 
 | |
| async def curl(url):
 | |
|     async with aiohttp.ClientSession() as session:
 | |
|         async with session.request("GET", url) as response:
 | |
|             print(repr(response))
 | |
|             chunk = await response.content.read()
 | |
|             print("Downloaded: %s" % len(chunk))
 | |
| 
 | |
| 
 | |
| if __name__ == "__main__":
 | |
|     ARGS = argparse.ArgumentParser(description="GET url example")
 | |
|     ARGS.add_argument("url", nargs=1, metavar="URL", help="URL to download")
 | |
|     ARGS.add_argument(
 | |
|         "--iocp",
 | |
|         default=False,
 | |
|         action="store_true",
 | |
|         help="Use ProactorEventLoop on Windows",
 | |
|     )
 | |
|     options = ARGS.parse_args()
 | |
| 
 | |
|     if options.iocp:
 | |
|         from asyncio import events, windows_events
 | |
| 
 | |
|         el = windows_events.ProactorEventLoop()
 | |
|         events.set_event_loop(el)
 | |
| 
 | |
|     loop = asyncio.get_event_loop()
 | |
|     loop.run_until_complete(curl(options.url[0]))
 |