首頁  >  文章  >  後端開發  >  如何使用 Golang 中的 mgo 函式庫透過 ID 尋找文件?

如何使用 Golang 中的 mgo 函式庫透過 ID 尋找文件?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-31 20:51:29280瀏覽

How to Find a Document by ID Using mgo Library in Golang?

在Golang 中使用mgo 函式庫找出ID

在提供的程式碼中,嘗試使用ID 透過ID 來尋找時會出現一個常見文件問題Golang 中的mgo 函式庫。理解此錯誤的關鍵在於 MongoDB 中物件 ID 的性質。

理解物件 ID

MongoDB 中的物件 ID 是唯一的 12 位元組十六進位值,用於服務作為每個文件的主鍵。然而,在使用 Golang 時,這些 ID 通常表示為 24 個字元的十六進位字串。這是因為這些字串使用每個位元組兩個十六進制數字對 12 個位元組的物件 ID 進行編碼。

錯誤

錯誤訊息「ObjectIDs 必須恰好是12 個位元組」 long (got 24)」表示程式碼正在嘗試使用24 個字元的字串作為對象ID。方案是使用bson.ObjectIdHex() 函數將24 個字元的十六進位字串轉換為有效的bson.ObjectId。將正確指示是否找到具有指定ID 的文件。形式,則可以使用ObjectId.Hex() 方法。上是12 位元組。

以上是如何使用 Golang 中的 mgo 函式庫透過 ID 尋找文件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn