我试图找出使用Hashids的最佳做法,如果我应该将我的哈希id存储在我的数据库中的列中,或者我应该如文档中所示使用它。即在一个区域中编码Id,在另一个区域解码。
使用我当前的设置,我已经编码了所有主键ID并在值可公开访问时对其进行解码,这是模块的预期目的,但我担心为我的id唯一生成的哈希值将在未来的某个时刻发生变化,这可能会导致我的应用程序的链接共享能力等问题。
基于这种情况,我真的应该将生成的哈希存储到我的数据库中的列中并查询吗?
答案 0 :(得分:1)
关于是否应该将Id存储在数据库中,您需要自行决定。我想说没有必要这样做。
以后是否会改变哈希真的取决于你是否更新了包裹,从页面开始;
由于生成的ID在更新后可能会有所不同,因此请确保包含Hashids的确切版本,这样您就不会在不知不觉中更改现有的ID。
不知道您使用的是哪个版本,但我是.NET版本的作者,并且我一直在尝试遵循语义版本意义修复错误我增加补丁,添加了功能(非破坏)增加轻微。哈希的生成方式会有变化吗?我会增加专业。