nuxeo rest api python客户端
nuxeo的Python项目详细描述
开始
安装非常简单:
python -m pip install --upgrade nuxeo
然后,使用下面的import语句来访问nuxeo 原料药:
fromnuxeo.clientimportNuxeo
文件
要求
nuxeo python客户端仅与以下组件一起工作:
- Nuxeo平台=LTS 2015
- requests>;=2.12.2(用于Unicode身份验证)
- setuptools>;=30.3.0
快速启动
本快速入门指南将演示如何使用 客户。
连接到Nuxeo平台
使用基本身份验证连接到Nuxeo平台的最简单方法 正在将包含username和password的元组传递给 客户,就像这样:
nuxeo=Nuxeo(auth=('Administrator','Administrator'))
然后可以使用nuxeo对象与平台交互。如果你愿意 要使用特定实例,可以指定base_url,如下所示:
nuxeo=Nuxeo(host='http://demo.nuxeo.com/nuxeo/',auth=('Administrator','Administrator'))
下载/上传配置
在nuxeo/constants.py文件中,有几个常量是 用于整个客户,您可以改变以满足您的需要。其中一些是:
- CHECK_PARAMS(默认为false),检查每个http调用的操作参数。
- CHUNK_LIMIT(默认为10 MiB),上载将自动分块的大小
- CHUNK_SIZE(默认为8 kib),下载时块的大小。
- MAX_RETRY(默认为5),任何HTTP调用上连接错误的重试次数
- UPLOAD_CHUNK_SIZE(默认为20 mib),上载时块的大小。
运行nxql查询
可以在nxql中运行查询(nxql是sql的一个子集, 您可以检查如何使用它。 在这里,我们首先fetching a workspace,然后使用 uid生成一个查询,该查询将查找具有File 或Picture类型,并且不会被删除。
# Fetch a workspacews=nuxeo.documents.get(path='/default-domain/workspaces/ws')# Build a query using its UIDnxql=("SELECT * FROM Document WHERE ecm:ancestorId = '{uid}'"" AND ecm:primaryType IN ('File', 'Picture')"" AND ecm:currentLifeCycleState != 'deleted'")query=nxql.format(uid=ws.uid)# Make the requestsearch=nuxeo.client.query(query,params={'properties':'*'})# Get resultsentries=search['entries']
entries将是一个list,其中每个包含一个dict。 查询返回的元素。
使用量
既然你的客户已经建立,这里有一些页面可以帮助你 提供的主要功能:
- Manage users and groups
- Work with documents
- Work with directories
- Work with blobs
- Run requests
- Helpers
- Useful snippets
- Script: Find duplicates
- Script: Create a live proxy
您还可以检查the API documentation 以获取更多选项
贡献
看我们的contribution documentation。
设置
git clone https://github.com/nuxeo/nuxeo-python-client
cd nuxeo-python-client
python setup.py develop
测试
Nuxeo平台实例需要运行在 http://localhost:8080/nuxeo用于运行测试,然后:
python -m pip install -U --user tox tox
可以在没有带有maven和tox的服务器的情况下启动测试:
mvn -f ftest/pom.xml clean verify
我们使用岗哨来捕捉测试中未处理的错误。 您可以在运行tox之前调整它。
它可以被禁用:
exportSKIP_SENTRY=1
您还可以为自己的团队定制哨兵DSN:
exportSENTRY_DSN="XXX"
以及定制哨兵环境:
# Note that the default value is "testing" exportSENTRY_ENV="testing"
部署
对于维护人员,分发模块的命令是:
python3 -m pip install wheel python3 setup.py sdist bdist_wheel upload
许可证
Apache License 2.0 版权所有(C)Nuxeo
关于裸体
Nuxeo极大地改进了基于内容的应用程序的构建方式, 管理和部署,使客户更加灵活、创新和 成功。Nuxeo提供了下一代企业级平台 用于构建传统的和尖端的面向内容的应用程序。 将强大的应用程序开发环境与基于saas的 工具和模块化架构、Nuxeo平台和产品 为一些最知名的品牌提供清晰的商业价值 包括Verizon、Electronic Arts、夏普、FICO、美国海军和 波音公司。Nuxeo的总部设在纽约和巴黎。更多信息 可在www.nuxeo.com找到。