目前有一个项目,原来是使用本地磁盘作为存储方式,现在要重构兼容一下 minio 作为我的服务端的后端存储,大概类似 docker registry 或者 harbor 的功能。目前有一个上传接口(上传任务为 uuid , 文件 hash 为 SHA256 )需要优化 PUT /:name/blobs/uploads/uuid?digest=xxxx(SHA256) ,之前在本地磁盘写文件的时候可以在 writeStream 写的过程中校验 hash ,现在添加一个 minio 后端,通过 putObject 接口将文件上传到 minio server 之后需要确认一下写之后的 sha256 是否与收到的一致。目前看到
https://github.com/minio/minio-js/blob/4f533785c89554d71944e6128b76e35e2b81279f/src/internal/client.ts#L803 可以检查 minio server 保存的 object 的 etag ,但是好像返回的格式是 MD5 ,看到 minio client 没有相关的配置,不知道 server 部署的时候有没有相关配置 etag 。如果没有的话,只能再读一遍写的 object 再计算一次。