推荐一款id生成器: Hashids
作者:快盘下载 人气:唯一 id 生成的方式有很多种,比较常见的有以下几种方式:
语言自带功能,如 Java 中的 UUID,常用于后端 第三方工具提供,如 npm 中的 nanoid,常用于前端 Twitter 开源的 Snowflake 算法,常用于后端 美团开源的 Leaf 算法,常用于后端 ...本文再推荐一款唯一 id 生成器:Hashids。它具有以下特性:
只能把指定的整数(且不支持负数)转换为唯一 id,具有一定的局限性。 不会发生冲突。因此我们无需考虑冲突碰撞的解决方案。 可自定义字符集和盐。 生成的结果无序,避免被遍历。 生成的结果自动规避脏话单词,如 shit 之类。 可以反向解析,这对于某些场景尤为合适(比如短链接系统,可以根据生成的短链接 id 获取原始 id,再从数据库中根据原始 id 拿到对应的长链接)。可见,该生成器具有一定的局限性,但提供了较为丰富的功能,在特定的场景下是非常好用的。
另外,对应源码短小精悍,且提供了多种版本的实现,包括但不限于JavaScript、Java、C等语言,有兴趣的同学可以到官网 hashids.org 学习使用。
发挥想象力,看看你有什么场景可以使用它呢?
加载全部内容