整理MongoDb ObjectId

时间:2015-03-13 14:59:27

标签: mongodb mongoose gridfs objectid

我们正在开发存储大量照片的照片库。我们选择了MongoDB的GridFS用于图像存储。每件事看起来都很好。

但是每当用户必须删除照片时,我们就会根据其"ObjectId"删除特定照片,但由于其长度,向客户端发送ObjectId看起来很丑陋。无法根据照片名称进行删除,因为它不是唯一的。

那么我们如何prettify ObjectId将其发送到客户端?

1 个答案:

答案 0 :(得分:0)

不确定这是否属于答案,因为它是主观的,但话题也是如此:

如果您不想涉及其他字段,可以更改ID的编码。我认为base64看起来很好:

55036ee50202b73c1a021897 - > NTUwMzZlZTUwMjAyYjczYzFhMDIxODk3

另一种选择是生成一个随机字符串并将其存储在文档中,这样可以在外观上提供大量的可定制性。例如,您可以使用仅包含BUZQ等大写字符的4位数代码。但是,请务必创建unique index,以免意外创建重复的标识符。