python小技巧大应用--实测aiohttp可正常运行的写法
作者:互联网
这两天在学习某大神写的关于aiohttp文章,使用其代码进行测试,不管怎样都运行不成功,用了两天时间查了不少资料,最终得到了满意的结果.现在与大家一起分享
(也许是我的环境与大神的环境有出入,我的开发环境python3.7.4)
1)在test-web项目中新建个test_aiohttpServer.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' a test aiohttp server '
__author__ = 'TianJiang Gui'
import asyncio
from aiohttp import web
async def handle(request):
name = request.match_info.get('name', "Anonymous")
text = "Hello, " + name
return web.Response(text=text)
async def index(request):
await asyncio.sleep(0.5)
return web.Response(body=b'<h1>Index</h1>', content_type='text/html')
async def hello(request):
await asyncio.sleep(0.5)
text = '<h1>hello, %s!</h1>' % request.match_info['name']
return web.Response(body=text.encode('utf-8'), content_type='text/html')
if __name__ == '__main__':
app = web.Application()
app.add_routes([web.get('/', index),
web.get('/{name}', handle),
web.get('/hello/{name}', hello)])
web.run_app(app,host='127.0.0.1',port=8100)
2)测试运行
2.1)pycharm中运行
2.2)打开浏览器测试运行
1)测试根路径
2)测试带参数
3)要注意的开发细节
如果要返回body页面内容一定要带上 content_type='text/html'
否则就会成为下载页面,如图:
最后,希望我的付出对大家有所帮助! :)
标签:__,web,name,aiohttp,get,python,text,request,-- 来源: https://blog.csdn.net/gui818/article/details/122866746