2

我正在处理一个需要使用 REST 或 CMIS 上传文件的 Java 项目(两种服务都可用)。我对这些 API 完全陌生,想问问哪一个更容易实现。我不能在项目中使用外部库,所以我需要从头开始实现客户端。

注意:唯一的要求是上传文件。

提前致谢。

4

2 回答 2

2

内容管理互操作性服务 (CMIS) 规范的目标是提供一组用于处理丰富内容存储库的服务。它为 ECM 应用程序提供了完整的规范,可以是 REST 或 SOAP。

CMIS 为控制文件夹、文档、关系和策略的操作提供规范。

我认为对于您的上传,使用 CMIS 就像用炸弹杀死苍蝇一样。

于 2012-07-09T12:28:45.320 回答
1

虽然我承认我不了解 CMIS,但使用 REST 上传文件只是经典的 HTTP 文件上传,您将路径名解释为指示要更新或替换的资源。基本的 REST 用法会让你(一个 HTTP)GET(方法)作为“读取文件”,POST 作为“在选择新名称的同时创建文件”(通常在之后进行重定向,以便客户端可以找出名称选择),PUT 为“创建具有给定名称的文件或替换该文件的内容”,DELETE 为“删除文件”。此外,您不需要支持所有这些方法;尽可能少地做(但支持一些GET 请求是个好主意,即使只是为了让人们知道他们的上传工作)。

但是,在实现时,您希望在所有情况下都尽量避免将大部分文件数据保存在内存中;那不成比例。最好花时间实现流传输,这样您实际上不需要缓冲超过几千字节。您当然可以使用 REST/HTTP 来做到这一点。(您甚至可以使用 MTOM 使用 SOAP 来做到这一点,但这可能超出了您的范围……)

于 2011-08-09T12:53:11.733 回答