0

在实际操作中,我们看到用户上传的图片名称为 84b222882da311e284b222000a1fbcf6_7.jpg

将图像存储为 /username/101.jpg /username/102.jpg 是不是更容易和结构化(例如,您可以拥有一个用于图像的数据库表,然后您可以简单地使用索引作为文件名。)

这里的实际考虑是什么?我想每次都必须检查新生成的随机名称是否不在数据库中?是否担心混淆?

4

2 回答 2

2

通常这样做有两个原因。

  1. 拥有唯一的文件名。
  2. 使猜测图像文件名变得困难(阻止人们在 URL 中输入下一个图像并查看图像)。
于 2013-02-28T17:49:49.543 回答
2

将图像存储为 /username/101.jpg /username/102.jpg 是不是更容易和结构化

一点也不。这种方式需要目录列表来获得使用的最高数量,并且会出现删除问题 - 您是否重复使用 ID?101.jpg 和 102.jpg至少与 84b222882da311e284b222000a1fbcf6.jpg一样任意,这可能是文件内容的哈希值或数据库中文件的 ID。

于 2013-02-28T17:56:23.093 回答