1
在我們的Web應用程序中,我們顯示一個脈衝列表,但是對於鏈接等,我們使每個脈衝都可用。在我們的Couch DB中,我們將每個脈衝都通過獨特的屬性賦予唯一的ID。 I.E .: www.foo.com/bar/帶散列的漂亮URL(md5)
儘管這些md5總和非常長,並且會產生醜陋的URL。是否有另一種方法來散列需要較少字符但仍保證唯一性的屬性。
非常感謝
在我們的Web應用程序中,我們顯示一個脈衝列表,但是對於鏈接等,我們使每個脈衝都可用。在我們的Couch DB中,我們將每個脈衝都通過獨特的屬性賦予唯一的ID。 I.E .: www.foo.com/bar/帶散列的漂亮URL(md5)
儘管這些md5總和非常長,並且會產生醜陋的URL。是否有另一種方法來散列需要較少字符但仍保證唯一性的屬性。
非常感謝
而不是創建一個醜陋的md5
的你可以使用的方法like this創建包含certain characters
的random string
一個given length
並插入到旁邊md5
行的行被用於檢索數據這從數據庫使用'漂亮的url'字符串。有一點需要考慮的是從可能的角色中取出元音,就像他們一樣,你最終可能會寫出不好的單詞:)另外,確保它在數據庫中當然不存在,如果它只是創建另一個......雖然不會經常發生。
但是不是很有可能是兩個id的重疊...會有數百個thounsands的脈衝(希望) –
不是真的 - 比如有10個數字和26個字母可能會形成你獨特的漂亮的url和你想要它是5個字符長,我認爲有36^5個可能的排列。給你很少的碰撞機會。請檢查我的數學雖然:) –
它是有意義的,在創建一個新的之前檢查該ID,實際上效果很好,謝謝 –