在CouchDB 和JSON 中公開結構體欄位
使用Go 函式庫存取CouchDB 時,使用者遇到了一個問題,即只有結構體字段開頭將大寫字母加入資料庫或序列化為JSON。
此行為源自於 Go語言的可見性規則。結構中的欄位僅匯出,這意味著如果它們以大寫字母開頭,則可以在目前套件外部存取。在 JSON 編碼和解碼的情況下,僅識別匯出的欄位。
但是,可以使用 JSON 標籤存取非大寫欄位。透過在結構欄位中新增標籤,您可以指定所需的 JSON 鍵名稱。例如:
type Sample struct { Name string `json:"name"` age int `json:"age"` }
在這種情況下,「Name」和「age」欄位將分別序列化為 JSON,鍵為「name」和「age」。這允許您在結構中包含小寫字段,同時仍能夠將它們包含在資料庫操作或 JSON 序列化中。
以上是如何使用 Go 在 CouchDB 和 JSON 中包含小寫結構欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!