标准UUID很长,您无法通过双击选择整个事物.
例如123e4567-e89b-12D3-a456-426655440000
我喜欢较短的ID.
我喜欢能够双击ID来选择它.
我的问题是:将标准ID编码为22(ish)字符长base62字母数字字符串是否有任何问题?
例如71jbvv7LfRKYp19gtRLtkn
编辑:添加了上下文
我们的需求是用于NoSQL数据存储服务(如DynamoDB)中的常规数据存储.碰撞不应该发生,但我的理解是UUID的碰撞风险可以忽略不计.标准UUID可以满足我们的需求,所以我要问的是……在base62编码中是否存在标准UUID不存在的任何差异,或者额外的风险或无法预料的问题?
谢谢.
最佳答案 Base62不像base-64那样标准,但是base-64会有两个额外的符号,这些符号可能不允许通过双击选择整个符号.
如何删除破折号( – )?这将使它比原来短,并且可以通过双击鼠标轻松选择.
例:
123e4567e89b12d3a456426655440000
更新:
base-64有两种常见的编码:[a-zA-Z0-9 /]和[a-zA-Z0-9_-].如果你使用后者,则可以解决您的选择问题.
另一方面,我认为base-62比我原先想象的更广泛使用.这是一个关于使用base-62:http://blog.birdhouse.org/2010/10/24/base62-urls-django/主题的好博客