为服务媒体项目生成密钥的最佳实践(照片,mp3,文档等)

cha*_*g30 0 java google-app-engine objectify google-cloud-datastore

我正在制作P2P媒体共享功能,用户可以与他人共享文件(图像,mp3等).当用户与另一个共享文件时,我只需向他们发送该文件的链接即可.链接看起来像:

http://www.domain.com/file?q=unique_key

现在,unique_key必须是字母数字且不易猜测,所以我打算使用文件记录的编码密钥.

这在我早期的Python GAE应用程序中很简单,但在我的新Java应用程序中,我无法获得此Key值,我得到的是一个Long(数字)ID.

我的实体有一个名为ID的字段,它是Long,但在我的GAE管理控制台中有一个实体编码的密钥,它是字母数字,我希望这对我数据库中的每条记录都是唯一的.那么如何访问呢?

我正在使用Objectify,当我创建这样的新密钥时

Key myKey = new Key(FileEntity.class,entityID);

myKey是一个包含一些文本的字符串,但它是我正在寻找的uniqye alpha数字id.

对不起我的模糊问题,请帮忙.

Nic*_*son 5

编码的字符串键容易猜到 - 它们是包含应用程序ID,种类名称和ID的编码协议缓冲区.如果您需要不易猜测的值,我建议生成UUID,并将其用作键名(字符串键).