[爆卦]uuid產生java是什麼?優點缺點精華區懶人包

雖然這篇uuid產生java鄉民發文沒有被收入到精華區:在uuid產生java這個話題中,我們另外找到其它相關的精選爆讚文章

在 uuid產生java產品中有1篇Facebook貼文,粉絲數超過2,018的網紅Kewang 的資訊進化論,也在其Facebook貼文中提到, 最近跟手機串接其中一支 API 的時候,小編在規格上設計了 request 必須帶一個 UUID 的值給 backend,以 Android 來說其實直接使用 UUID.randomUUID().toString() 就可以了,但 iOS 熱門的 FCUUID library 看起來好像給了一個錯誤...

  • uuid產生java 在 Kewang 的資訊進化論 Facebook 的最佳解答

    2019-01-21 09:47:00
    有 10 人按讚

    最近跟手機串接其中一支 API 的時候,小編在規格上設計了 request 必須帶一個 UUID 的值給 backend,以 Android 來說其實直接使用 UUID.randomUUID().toString() 就可以了,但 iOS 熱門的 FCUUID library 看起來好像給了一個錯誤的實作,而且大家好像常誤解了 UUID 的意思。為了這件事,昨天凌晨跟朋友弄了一個小時 Orz

    ---

    一般大家常知道的 UUID 應該是像這樣 8909ea35-8b0e-4e1a-8ba3-9c0af47c77ca,由 8-4-4-4-12 及 16 進制的字元,共 36 個字元所組成的,Java 及一些 npm 的 library 也是如此實作。可是 iOS 的 FCUUID 卻是產生 8909ea358b0e4e1a8ba39c0af47c77ca,連續 32 個字元的字串

    ---

    下面是對話內容,沒想到 UUID 的格式還有不一樣的 Orz

    ---

    (I: ios, B: backend)

    * I:你說的uuid有長度限制嗎?
    * B:uuid 就是 36 chars
    * I:format我不用管對吧,我只要送36個字元過去
    * B:uuid 就 uuid
    * I:你要well format的uuid,還是我給你一串36個字元的字串
    * B:well format 的 uuid
    * I:ok
    * B:因為我就是講 uuid 啊 xddd
    * I:這詞早就被亂用了
    * B:怎說?
    * I:很多人的uuid不是那個uuid阿,就一串unique的id,以前接過很多api,uuid就unique的id,他們就這樣叫,也沒人在管,uid??uuid??阿災,他們都這樣叫
    * B:不夠嚴謹,這工程師不行吧

    (半小時後)

    * I:要不要dash呢?
    * B:要,因為是 uuid
    * I:我現在的uuid是用lib產生的
    * B:昏
    * I:uuidForSesion,這method聽起來是不是很完美,完全就是我們要的
    * B:看起來是
    * I:但他是32個char,沒4個dash
    * B:心累 orz

    ---

    雖然小編不會寫 Objective-C 但還是去 FCUUID 翻了一下程式碼 (https://github.com/fabiocaccamo/FCUUID/blob/master/FCUUID/FCUUID.m#L99),發現作者拿到 UUID 之後把 - 取代為空字串,所以只剩下 32 個字元。看了 README 的所有內容也沒提到會改變 UUID 的格式,「This library provides the simplest API to obtain universally unique identifiers with different levels of persistence.」

    最後看到更有趣的一個 method (https://github.com/fabiocaccamo/FCUUID/blob/master/FCUUID/FCUUID.m#L358),uuidValueIsValid 會判斷所傳入的字串是否為 UUID 格式,結果不知道是不是為了相容於正確的 UUID 格式,裡面的 regex 寫成 ^[0-9a-f]{32}|[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}$,讓小編啼笑皆非 囧

    只不過在 GitHub 上都沒有討論到 32 個字元及 36 個字元的話題,不知道是不是使用 FCUUID 的 iOS 開發者都沒有這種需求呢?

    #uuid #ios #fcuuid

你可能也想看看

搜尋相關網站