czasg / pywss

一个轻量级的 Python Web 框架
https://czasg.github.io/pywss/
MIT License
96 stars 18 forks source link
python python-web pywss web web-framework
![pywss](./pywss.png)
![Project status](https://img.shields.io/badge/python-3.6+-green.svg) ![PyPI](https://img.shields.io/pypi/v/pywss?color=green) ![Codecov](https://img.shields.io/codecov/c/github/czasg/pywss?token=JSXIQXY1EQ) [![GitHub issues](https://img.shields.io/github/issues/czasg/pywss)](https://github.com/czasg/pywss/issues) [![GitHub issues](https://img.shields.io/github/issues-closed/czasg/pywss)](https://github.com/czasg/pywss/issues-closed) [![GitHub license](https://img.shields.io/github/license/czasg/pywss)](https://github.com/czasg/pywss/blob/main/LICENSE)

Pywss 简介

Pywss(发音 /piːwaɪz/,类似 p~whys)是一个轻量级的 Python Web 框架,它基于 Python3.6+ 特性构建。

与 Flask、Django 等主流框架不同的是,Pywss 的底层并没有实现 WSGI 接口协议。 其编程风格也更类似于 Gin、Iris 等框架,因此对于熟悉这些框架的开发者来说,Pywss 是一个非常值得探索的项目。

其关键特性有:

在线文档 https://czasg.github.io/pywss/


快速开始

1、安装 pywss

pip3 install pywss

2、搭建 web 应用

首先创建 main.py 文件,并写入以下代码:

import time
import pywss

def log_handler(ctx: pywss.Context):
    start_time = time.time()
    ctx.next()
    print(
        f"Route: {ctx.route}, "
        f"Method: {ctx.method}, "
        f"Status: {ctx.response_status_code}, "
        f"Time: {time.time() - start_time:.3f}s"
    )

def handler(ctx: pywss.Context):
  ctx.write("hello~")

def main():
    app = pywss.App()
    app.get("/hello", handler)  # curl localhost:8080/hello
    app.any("*", log_handler, handler)  # curl -X POST localhost:8080/hello
    app.run()

if __name__ == '__main__':
    main()

接着启动服务:

python3 main.py

至此,一个简单的 web 应用服务就完成了。

更多功能见在线文档


Activity

Alt