将数组编码为固定长度的字符串

时间:2018-07-31 13:23:17

标签: algorithm base64 encode

我正在尝试实现与PCPartPicker的列表永久链接功能类似的功能。

http://docs.h2o.ai/h2o/latest-stable/h2o-docs/save-and-load-model.html

基本上基于列表中的项目生成一个永久链接。关键部分是生成一个字符串,该字符串应为:

  1. 唯一
  2. 永久
  3. 固定长度

我正在考虑对包含产品ID的数组进行编码,但是找不到实现它的正确方法。

Base64和类似的库(例如Hashids库)可以确保它的唯一性和持久性,但是当数组中包含很多项时,它会花费很长时间。

有没有其他方法可以对数组进行编码,或者还有其他方向可以实现此功能?

谢谢。

1 个答案:

答案 0 :(得分:0)

一个不能为包含所有信息的任意长度列表生成唯一的固定长度字符串-总是有一些长度不合适。

由于您的站点具有数据库,因此您可以生成UUID并将列表与UUID一起存储在DB中。为了节省空间和精力,只有在用户按下“获取永久链接”按钮或类似的按钮时,才能将其保存到数据库中。