2018-6-5更新
廖大原文地址
目标:一个包含日志、用户和评论的blog网站
一、开发环境
python 3.6
异步框架 aiohttp
前端模板引擎 jinjia2
MySQL异步驱动 aiomysql
上面后三个部分需要学习、了解
二、Web App骨架
Web App建立在asyncio基础上,使用aiohttp写基本的app.py
可以在9000端口监听HTTP请求,并且对首页 / 进行响应
import logging; logging.basicConfig(level=logging.INFO)
import asyncio, os, json, time
from datetime import datetime
from aiohttp import web
def index(request):
return web.Response(body=b'<h1>Awesome</h1>')
@asyncio.coroutine
def init(loop):
app = web.Application(loop=loop)
app.router.add_route('GET', '/', index)
srv = yield from loop.create_server(app.make_handler(), '127.0.0.1', 9000)
logging.info('server started at http://127.0.0.1:9000...')
return srv
loop = asyncio.get_event_loop()
loop.run_until_complete(init(loop))
loop.run_forever()