91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

GoFrame錯誤處理常用方法是什么

發布時間:2022-07-08 14:07:26 來源:億速云 閱讀:171 作者:iii 欄目:開發技術

這篇“GoFrame錯誤處理常用方法是什么”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“GoFrame錯誤處理常用方法是什么”文章吧。

錯誤創建

New/Newf

用于創建一個自定義錯誤信息的error對象,并包含堆棧信息。

New(text string) error
Newf(format string, args ...interface{}) error

Wrap/Wrapf

用于包裹其他錯誤error對象,構造成多級的錯誤信息,包含堆棧信息。

func Wrap(err error, text string) error
func Wrapf(err error, format string, args ...interface{}) error

NewSkip/NewSkipf

用于創建一個自定義錯誤信息的error對象,并且忽略部分堆棧信息(按照當前調用方法位置往上忽略)。高級功能,一般開發者很少用得到。

func NewSkip(skip int, text string) error 
func NewSkipf(skip int, format string, args ...interface{}) error

錯誤碼使用

錯誤碼相關方法概覽

func NewCode(code int, text string) error
func NewCodef(code int, format string, args ...interface{}) error
func NewCodeSkip(code, skip int, text string) error
func NewCodeSkipf(code, skip int, format string, args ...interface{}) error
func WrapCode(code int, err error, text string) error
func WrapCodef(code int, err error, format string, args ...interface{}) error

NewCode/NewCodef

功能同New/Newf方法,用于創建一個自定義錯誤信息的error對象,并包含堆棧信息,并增加錯誤碼對象的輸入。

NewCode(code gcode.Code, text ...string) error
NewCodef(code gcode.Code, format string, args ...interface{}) error
示例代碼
func ExampleNewCode() {
    err := gerror.NewCode(gcode.New(101, "", nil), "My Error")
    fmt.Println(err.Error())    // My Error
    fmt.Println(gerror.Code(err))    //101
}
func ExampleNewCodef() {
    err := gerror.NewCodef(gcode.New(101, "", nil), "It's %s", "My Error")
    fmt.Println(err.Error()) //It's My Error
    fmt.Println(gerror.Code(err).Code()) //101
}

WrapCode/WrapCodef

功能同Wrap/Wrapf方法,用于包裹其他錯誤error對象,構造成多級的錯誤信息,包含堆棧信息,并增加錯誤碼參數的輸入。

WrapCode(code gcode.Code, err error, text ...string) error
WrapCodef(code gcode.Code, err error, format string, args ...interface{}) error
示例代碼
func ExampleWrapCode() {
    err1 := errors.New("permission denied")
    err2 := gerror.WrapCode(gcode.New(403, "", nil), err1, "Custom Error")
    fmt.Println(err2.Error())     // Custom Error: permission denied
    fmt.Println(gerror.Code(err2).Code())    // 403
}
func ExampleWrapCodef() {
    err1 := errors.New("permission denied")
    err2 := gerror.WrapCodef(gcode.New(403, "", nil), err1, "It's %s", "Custom Error")
    fmt.Println(err2.Error())    // It's Custom Error: permission denied
    fmt.Println(gerror.Code(err2).Code())    // 403
}

NewCodeSkip/NewCodeSkipf

功能同NewSkip/NewSkipf,用于創建一個自定義錯誤信息的error對象,并且忽略部分堆棧信息(按照當前調用方法位置往上忽略),并增加錯誤參數輸入。

func NewCodeSkip(code, skip int, text string) error
func NewCodeSkipf(code, skip int, format string, args ...interface{}) error

獲取error中的錯誤碼接口

func Code(err error) gcode.Code

當給定的error參數不帶有錯誤碼信息時,該方法返回預定義的錯誤碼gcode.CodeNil

以上就是關于“GoFrame錯誤處理常用方法是什么”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开化县| 大洼县| 河源市| 贵定县| 吴旗县| 项城市| 唐海县| 黄大仙区| 巴南区| 高青县| 青河县| 扶余县| 西丰县| 安庆市| 舞钢市| 富源县| 柯坪县| 大化| 涞源县| 庆安县| 巴彦淖尔市| 无极县| 合阳县| 贵定县| 岳阳市| 大田县| 新沂市| 库伦旗| 聂拉木县| 尼勒克县| 广南县| 无为县| 塔城市| 大悟县| 额尔古纳市| 元朗区| 丹江口市| 平乡县| 盈江县| 屯留县| 安阳市|