Skip to main content

一款web协程框架

Project description

CheeseAPI

一款协程友好的 web 框架

该框架为个人设计,仅供学习交流使用,各种 API 目前不会保证稳定性和向后兼容性

安装

pip install CheeseAPI

依赖

  1. CheeseLog

日志系统,CheeseAPI 使用它进行日志的输出与记录

  1. CheeseSignal

信号系统,CheeseAPI 使用它进行所有事件信号的管理与分发

项目结构

CheeseAPI采用模块结构:

| - User
    | - __init__.py
    | - model.py
    | - api.py
    | - scheduler.py
    | - service.py
    | - handle.py
    | - validator.py
| - Permission
    | - __init__.py
    | - model.py
    | - api.py
    | - service.py
    | - validator.py
| - __init__.py
| - app.py

CheeseAPI 并没有强制规定文件名,但建议的文件命名方式如下:

文件名 备注
__init__.py 公用变量
model.py ORM或类
api.py API接口
scheduler.py 定时任务
service.py 业务逻辑实现
handle.py 运行逻辑
validator.py 参数校验

使用

创建一个 app 文件 app.py

from CheeseAPI import CheeseAPI, Response

app = CheeseAPI()

@app.route.get('/')
async def index(**kwargs):
    return Response('这里是CheeseAPI!')

若在单文件中运行,继续添加入口即可

if __name__ == '__main__':
    app.run()

若在多文件项目中运行,可创建一个 manage.py 入口文件

from app import app

if __name__ == '__main__':
    app.run()

运行入口文件即可

示例

examples 目录下有一些示例项目,可以参考学习

文档

1. CheeseAPI(主模块)

2. Route(路由)

3. Request

4. Response

5. Websocket

6. File

7. Validator(数据校验)

8. Signal

9. Scheduler(任务调度)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cheeseapi-2.0.8b3.tar.gz (27.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cheeseapi-2.0.8b3-py2.py3-none-any.whl (33.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file cheeseapi-2.0.8b3.tar.gz.

File metadata

  • Download URL: cheeseapi-2.0.8b3.tar.gz
  • Upload date:
  • Size: 27.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for cheeseapi-2.0.8b3.tar.gz
Algorithm Hash digest
SHA256 deb1eee93dbc1d7ac45d10d7140a8a85baf01671e8318e31fa40c0a11c60a252
MD5 eefb6c63d89f969e7e4e09163ce18b9d
BLAKE2b-256 bc7ce130a8333d2ed2fbc14e302f55f6f62837b16bd16ebd214136428a6c5d2d

See more details on using hashes here.

File details

Details for the file cheeseapi-2.0.8b3-py2.py3-none-any.whl.

File metadata

  • Download URL: cheeseapi-2.0.8b3-py2.py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for cheeseapi-2.0.8b3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e021f9b21ccfd7d5e4e33f6bec28f102dbdccfb2a14d61f947694417760ffaa4
MD5 f90aec0e91fcc4b84446816115234308
BLAKE2b-256 87a105e0a6e7ddcd90786cba7f38192d6302bfcdb9de5d67479a51129678ad73

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page