本文翻译自 The UX of UUIDs,作者:Andreas Thomas, 略有删改。
唯一标识符在从用户身份验证到资源管理的所有应用程序中起着至关重要的作用。虽然使用标准UUID将满足您的所有安全问题,但我们可以为用户改进很多。
这篇文章讨论了唯一标识符(UUID)在应用程序中的重要性,以及如何通过一些改进来增强用户体验。
确保唯一性
唯一标识符对于区分系统中的各个实体至关重要。它们提供了一种可靠的方式,确保每个项目、用户或数据片段都有一个独特的身份。通过维持唯一性,应用程序可以有效地管理和组织信息,使操作更加高效,并促进数据的完整性。
任何安全生成的128位UUID对我们来说都足够了,有很多库可以生成UUID,或者你可以使用你选择的编程语言的标准库。在这篇博客中,我将使用Typescript示例,但基本思想适用于任何语言。
const id = crypto.randomUUID()
// '5727a4a4-9bba-41ae-b7fe-e69cf60bb0ab'
我们也可以止步于此,但我们做的更好,通过一些小的改进来增强用户体验:
- 使它们易于复制
- 添加前缀
- 更高效的编码
- 改变长度
复制UUID很麻烦
尝试通过双击它来复制以下UUID:
c6b10dd3-1dcf-416c-8ed8-ae561807fcaf
如果你幸运的话,你能复制整个UUID,但对大多数人来说,他们只得到了一个部分,提高唯一标识符可用性的一种方法是使它们易于复制。
这可以通过从UUID中移除连字符来实现,允许用户简单地双击标识符来复制。通过这个小改变可以大大改善用户在处理标识符时的体验。
在代码中移除连字符很简单,以下是如何在js/ts中做到这一点:
const id = crypto.randomUUID().replace(/-/g, "")
// fe4723eab07f408384a2c0f051696083
现在再试试复制它,感觉好多了!
添加前缀
我们可以通过添加一个有意义的前缀来帮助用户区分不同环境或系统中的资源。例如,Stripe使用像sk_