我想知道如何在每张图片中制作一个像Facebook上的自动生成的ID:
我需要为我上传的文件添加一个id,因为当用户在同一天上传相同的文件名时会让我担心,这会使API混淆。对不起,我不能告诉你任何代码,因为我真的不知道从哪里开始。
在这里你可以看到我上传了两次
另外,我不想在此使用自动增量ID,因为我打算将ID保存为服务器内文件的文件名。
答案 0 :(得分:0)
您可以使用日期来生成日期和时间。无论数据是什么,都会根据您使用的编程语言将其转换为毫秒级。用你的文件名来表示毫秒。像miniseconds +你的文件名。所以每个文件名都是唯一的。您可以维护两行:1。原始媒体名称2.修改媒体名称
以修改的媒体名称和原始媒体名称中的原始名称存储唯一名称。
当用户请求照片时,将修改后的媒体名称作为路径和原始媒体名称发送,以显示为照片名称。
答案 1 :(得分:0)
为此,我建议使用散列,例如SHA散列函数之一或MD5。您可以使用诸如crypto-js之类的库通过JavaScript生成此哈希,但是在Web服务器上生成哈希可能会更容易。
存在散列冲突的可能性,但即使对于像MD5这样的相对较弱的散列,这也是极不可能的。如果使用像SHA-256这样的散列,可能没有生成任何相同的散列。但是,通过使用散列函数,您可以避免存储重复的图像。