lessweb是什么?
lessweb是一个极易上手的python web框架,其目标是:
- 简单且高效: 基于aiohttp库的IOC能力,原生支持配置加载和日志设置,满足生产级开发要求
- pythonic: 支持最新的python版本和最新的python语法
安装
pip3 install lessweb
lessweb依赖python3.6引入的类型标注语法,所以只支持python3.6.0以上版本。
lessweb用到了python3.8引入的positional-only参数和TypedDict,所以推荐使用python3.8.0以上版本。
Hello, world!
创建一个index.py文件,内容为:
from lessweb import Bridge, get_mapping
@get_mapping('/')
async def hello():
return {'message': 'Hello, world!'}
def main():
bridge = Bridge()
bridge.add_route(hello)
bridge.run_app()
if __name__ == '__main__':
main()
运行之后,用浏览器访问http://localhost:8080/
,就能看到显示{"message": "Hello, world!"}
的页面。
设置端口
创建一个config.toml文件,内容为:
[bootstrap]
port = 80
把index.py的main函数内容改为:
def main():
bridge = Bridge(config='config.toml')
bridge.add_route(hello)
bridge.run_app()
运行之后,就可以用浏览器访问http://localhost/
了。
还可使用环境变量覆盖配置文件的内容,例如运行BOOTSTRAP_PORT=8081 python3 index.py
,就能用http://localhost:8081
访问。