CMIS protocol specification甚至不包含“同步”或“异步”字样。
我猜这是隐含的,每个服务器端操作都是同步的? 有反例吗?
场景:我创建了一个文档,然后立即列出了该目录,该文件尚未出现 这种情况是非法的吗? (不是客户端问题,客户端在转到下一条指令之前等待HTTP响应)
答案 0 :(得分:1)
通常,CMIS操作应该是同步的。我不知道任何反例。服务器上的异步操作几乎不可能创建应用程序。
假设您正在使用AtomPub,您可能需要检查 http://bitworking.org/projects/atom/rfc5023.html。创建资源会返回其URI。
所以我猜你所看到的是实现中的错误,或者客户端正在使用规范未涵盖的实现细节。露天存储库例如默认情况下是异步索引(solr)。因此,我认为应该可以使用代码来演示您通过搜索支持列表的行为。
答案 1 :(得分:1)
CMIS是同步的,对于跨越多个请求的事务没有任何语义。因此,AtomPub绑定中的每个成功的突变请求(POST
,PUT
,DELETE
都会对后续请求产生直接影响。
您描述的场景并非违法,在CMIS下根本无法实现。如果您需要异步操作,则需要将客户端与CMIS分离并引入一个中间层,例如: