首頁 >後端開發 >Golang >如何有效驗證 Go 中的結構?

如何有效驗證 Go 中的結構?

Linda Hamilton
Linda Hamilton原創
2024-10-30 02:08:29667瀏覽

How Can I Efficiently Validate Structs in Go?

慣用地驗證結構

確定結構的有效性需要驗證其每個字段的正確性。此過程可能會變得乏味,特別是對於具有大量欄位的結構。

傳統方法(如提供的程式碼片段中所述)涉及對每個欄位進行單獨驗證,如果任何欄位無效,則會引發錯誤。雖然有效,但此方法可能很麻煩。

替代解決方案

go-validator 套件(https://github.com/go-validator/validator)提供了一種結構化的結構驗證方法。它透過註解表達欄位驗證規則來簡化流程。

例如,包裝的 README 中提供的範例使用註解來指定 NewUserRequest 結構上的以下限制:

  • 使用者名稱必須包含 3-40 個字母數字字元。
  • 名稱不能為空。
  • 年齡必須至少 21 歲。
  • 密碼長度必須至少為 8 個字元。

驗證器套件提供了一個方便的方法(validator.Validate)來根據這些註解執行驗證。如果驗證失敗,它會傳回一個指示有效性的布林值和一個錯誤清單。

以上是如何有效驗證 Go 中的結構?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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