java - 如何获取 Jackrabbit 服务器上文件的校验和?
问题描述
我们已经运行了一个标准的 Jackrabbit WebDAV 服务器并在其中上传了一些文件。
当我们上传一个同名的新文件时,我们需要检查服务器上的文件是否是最新的并且不应该被替换。最初的想法是使用 ETags,但我们发现它太弱了,不适合应用程序。
所以现在的想法是检查传入和现有文件的校验和(哈希)。由于文件可能非常大并且每次下载都可能是一项耗时的操作,因此最好有一个选项来轻松获取已上传文件的校验和。
所以我的问题是:是否有任何选项可以获取上传到服务器的文件的校验和?也许还有其他一些选项或功能可以帮助进行此类文件处理?
解决方案
曾经有 Content-MD5 (在 HTTP 规范中,而不是 Jackrabbit)。
HTTP 工作组目前致力于新的摘要类型(请参阅https://httpwg.org/http-extensions/draft-ietf-httpbis-digest-headers.html),但这仍在进行中,尚未实施在长耳兔。
也就是说,最终获得哈希可以作为 WebDAV 属性或使用 WebDAV 扩展报告来实现。
推荐阅读
- amazon-web-services - 是否有 AWS / Azure / Gcloud API 的包装器?
- python - 按 ID 分组并完成时间序列 Pandas
- javascript - 选择的js有问题
- react-native - 如何将 React Native 应用程序从 Windows 移动到 Mac 机器
- java - 不兼容的类型。在 android 中编辑文本错误
- java - 无法检查 json 空节点
- c++ - 有没有可能在迭代循环中有另一个迭代器的方法?
- scala - 在执行上下文中获得在后台运行的期货数量的最佳方法是什么?
- javascript - Reactjs:为什么 Carousel 根本没有显示?
- arrays - 循环数组上最大连续和的递归分治法