Skip to content

nicehorse06/gin-shortener-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gin shortener api

功能

  • 輸入合法的網址轉成帶有ID的縮網址
    • 用hash來縮網址
  • 網址回收功能,
  • 相同網址對應到同一縮網址功能
  • 給予超連結
  • 複製網址功能
  • 加上縮網址密碼
  • 新增錯誤網址(4XX)的提示訊息
  • 更多單元測試

縮網址的方法

基於計數器的生成法

這種方法使用一個增量計數器(通常儲存在資料庫中)。每當有一個新的URL需要縮短時,計數器的值會增加,並將這個數字轉換成一個短字符串(如使用基數轉換,例如62進位制,包含0-9、A-Z、a-z的字符)。這種方法的好處是簡單易行,而且每個URL的轉換都是唯一的。

基於哈希的方法

這種方法使用哈希函數來生成縮網址。可以使用MD5、SHA-256等哈希函數對原始URL進行哈希,然後取哈希值的一部分作為縮網址的一部分。為了避免衝突,通常會對哈希值進行檢查,確保縮網址的唯一性。這種方法可以減少URL的預測性,增加安全性。

隨機字符串生成

這種方法隨機生成一串指定長度的字符串(通常是字母和數字的組合),並將其作為縮網址的標識。生成時需要檢查數據庫,確保不會產生重複的縮網址。這種方法的隨機性較高,但需要妥善處理重複檢查。

自定義關鍵字方法

這種方法允許用戶指定縮網址的一部分或全部為自定義的字符串。例如,一個用戶可以將 https://example.com/very/long/url 縮短為 http://sho.rt/mycustomlink。這增加了記憶和個性化的可能性,但同時也需要處理重複和保留關鍵字的問題。

使用UUID

生成一個全球唯一識別碼(UUID)作為縮網址的一部分。UUID的好處是其生成簡單,且機率上幾乎不會重複,非常適合需要保證縮網址絕對唯一的場景。

About

gin shortener api (In development)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages