正如您可能已經猜到的那樣,這是用於生成短網址的。將96位整數轉換爲字符串(Base64的替代方法)的最簡潔方式
將96位整數壓縮爲URL友好的短字符串的最佳方法是什麼? Base64是最好的方式還是有其他選擇?
正如您可能已經猜到的那樣,這是用於生成短網址的。將96位整數轉換爲字符串(Base64的替代方法)的最簡潔方式
將96位整數壓縮爲URL友好的短字符串的最佳方法是什麼? Base64是最好的方式還是有其他選擇?
我會用這個base64。它可以保護您免受非法字符的攻擊,並生成「看起來」有點像人類可讀的字符串。
一個簡單的方法是修改後的Base64編碼。原來的Base 64將不起作用,因爲它使用加號(+)和斜槓(/)字符,這些字符在URL中有特殊含義。
但是,如果用減號( - )和下劃線(_)字符替換這些字符,那麼您有一個很好的解決方案。
如果我沒有弄錯,有65或66個URL安全字符。所以修改後的Base 64非常接近最佳狀態。
我同意,這就是我一直在想的。只是看看是否有更好的選擇。 – Drew
將它轉換爲十六進制怎麼樣?
生成的字符串將比Base64版本更長。 – Drew
對不起 - 當我寫這篇文章時,長度是主要的優先事項並不清楚。 Hex比自定義Base64更容易;-)如果您準備使用擴展的ASCII字符,那麼您可能可以使用Base128對其進行編碼。 –
一個說明。我已經熟悉URL友好的Base64。我正在尋找可以產生更短弦的替代品。 (我不確定這是否存在,這就是首先提出問題的原因) – Drew