短ID算法

发布于 2024-12-09 23:44:57 字数 242 浏览 1 评论 0原文

我正在寻找一种算法 - 或者我应该更好地说:编码? - 要将整数压缩为短字符串 ID(例如 URL 缩短程序),请使用:http://goo.gl/0puu

Url safe base 64 接近它,但也许有更好的东西。

要求:

  • url尽可能短
  • 安全

I'm looking for an algorithm - or should I better say: encoding? - to compress integer numbers to short string IDs like URL shorteners use: http://goo.gl/0puu

Url safe base 64 comes close to it, but maybe there is something better.

Requirements:

  • as short as possible
  • url safe

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

云仙小弟 2024-12-16 23:44:57

“yi_H”称base64“完美”,经过更多研究后我得出了相同的结论,因为仅可以在 URL 中使用以下字符,无需担心

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 - _ . ~

即 66 个字符,而 base64 仅使用 64 个字符。这两个可能的字符并不实用,因为 66 不是基于 2。

结论: URL 安全 base64 (作为 Apache Commons 的一部分提供例如)非常适合短 ID。

"yi_H" called base64 "perfect" and after a bit more research I came to the same conclusion, since only the following characters could be used in URLs without worry:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 - _ . ~

Thats 66 characters, whereas base64 only uses 64 characters. The two more possible characters wouldn't be practical because 66 is not based on 2.

Conclusion: URL safe base64 (offered as part of Apache Commons for example) is perfect for short IDs.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文