Nextcloud Python框架
项目描述
Nextcloud Python框架
Python库,提供了一个强大且文档齐全的API,允许开发者与Nextcloud的功能进行交互和扩展。
关键特性包括
- 快速:高性能,尽可能低延迟。
- 直观:快速编码,易于使用。
- 可靠:最小化不兼容的更改。
- 健壮:尽可能多地覆盖所有代码的测试。
- 简单:设计得易于使用,并配有优秀的文档。
- 同步+异步:提供同步和异步API。
功能
功能 | Nextcloud 27 | Nextcloud 28 | Nextcloud 29 | Nextcloud 30 |
---|---|---|---|---|
日历 | ✅ | ✅ | ✅ | ✅ |
文件系统 & 标签 | ✅ | ✅ | ✅ | ✅ |
Nextcloud Talk | ✅ | ✅ | ✅ | ✅ |
通知 | ✅ | ✅ | ✅ | ✅ |
共享 | ✅ | ✅ | ✅ | ✅ |
用户 & 组 | ✅ | ✅ | ✅ | ✅ |
用户 & 天气状况 | ✅ | ✅ | ✅ | ✅ |
其他API** | ✅ | ✅ | ✅ | ✅ |
聊天机器人API* | ✅ | ✅ | ✅ | ✅ |
设置UI API* | N/A | N/A | ✅ | ✅ |
任务处理提供者API* | N/A | N/A | N/A | ✅ |
*仅适用于 NextcloudApp
**活动,笔记
Nextcloud和NextcloudApp类的区别
Nextcloud类作为一个标准Nextcloud客户端,允许您使用用户名和密码进行API请求。
另一方面,NextcloudApp类是为创建Nextcloud应用而设计的。
它使用AppAPI提供额外的功能,允许应用程序拥有自己的图形界面,满足不同用户的需求,以及实现全功能应用程序所需的一切。
这两个类提供了大多数相同的API,但NextcloudApp提供了更广泛的选择,因为应用程序通常需要访问更多的API。
为Nextcloud类编写的任何代码都可以轻松地适应NextcloudApp类,只要它不涉及需要用户密码验证的调用。
NextcloudApp仅从Nextcloud 27.1.2及更高版本,且已安装AppAPI时可用。
Python中的Nextcloud骨架应用
from contextlib import asynccontextmanager
from fastapi import FastAPI
from nc_py_api import NextcloudApp
from nc_py_api.ex_app import AppAPIAuthMiddleware, LogLvl, run_app, set_handlers
@asynccontextmanager
async def lifespan(app: FastAPI):
set_handlers(app, enabled_handler)
yield
APP = FastAPI(lifespan=lifespan)
APP.add_middleware(AppAPIAuthMiddleware)
def enabled_handler(enabled: bool, nc: NextcloudApp) -> str:
if enabled:
nc.log(LogLvl.WARNING, "Hello from nc_py_api.")
else:
nc.log(LogLvl.WARNING, "Bye bye from nc_py_api.")
return ""
if __name__ == "__main__":
run_app("main:APP", log_level="trace")
支持
您可以通过多种方式支持我们
- ⭐️ 关注我们的工作(这真的很有动力)
- ❗️ 创建一个问题或功能请求(给我们带来一个优秀想法)
- 💁 解决一些问题或创建一个Pull Request(为该项目做出贡献)
- 🙏 编写其使用示例或纠正文档中的错误。
更多信息
项目详情
下载文件
下载适合您平台的项目文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
nc_py_api-0.17.1.tar.gz (77.7 kB 查看哈希值)
构建分布
nc_py_api-0.17.1-py3-none-any.whl (98.9 kB 查看哈希值)