Discuss / Python / 第二天:web骨架

第二天:web骨架

Topic source

同步的web服务器显然不能满足需求,因此可以使用异步处理框架 aiohttp,因为廖大之前的章节对aiohttp讲解很少,推荐查看官文文档 aiohttp服务器端使用文档, 本节代码和自己的理解:

# -*- coding:utf-8 -*-
from aiohttp import web

#如果返回的结果是有IO耗时操作的,可以使用协程,如果不是,可以去掉async,直接返回一个函数
async def index(request):
    #前面章节提到过,数据传输和保存需要指定编码,一般为utf-8格式,读取的内存中就成unicode编码了,content_type来指定传输的数据的类型,这里是网页
    return web.Response(body='<h1>Awesome-Python3-App</h1>'.encode('utf-8'),content_type='text/html')

#创建一个web服务器对象
app = web.Application()
#通过router的指定的方法可以把请求的链接和对应的处理函数关联在一起
app.router.add_get('/',index)
#运行web服务器,服务器启动后,有用户在浏览器访问,就可以做出对应的响应
web.run_app(app,host='127.0.0.1',port=9527)

  • 1

Reply