使用asyncio创建最小的HTTP服务器

AnC*_*AnC 9 python python-asyncio

虽然我熟悉HTTP服务器和事件循环,但我在掌握Python asyncio的内部工作方面遇到了一些麻烦.

作为一个学习练习,我一直在尝试编写一个最小的HTTP服务器(只是回显请求方法,URI,标题和正文),没有额外的依赖.我已经研究了aiohttpaiowsgi作为参考,但是很难理解那里发生了什么 - 部分是因为协议,传输等的感知复杂性有点压倒性.所以我现在卡住了,因为我不知道从哪里开始.

期望这只是几行代码来建立连接,使用传入的文本流并发送回另一个文本流是不是很天真?

And*_*lov 5

你可以看看picoweb作为非常简单(非常有限)的HTTP服务器的例子.

但是,当然,当您尝试实现全功能Web服务器时,您将获得类似aiohttp的内容 - HTTP是复杂的(甚至可能是复杂的)标准.