目录前言错误创建New/NewfWrap/WrapfNewSkip/NewSkipf错误码使用错误码相关方法概览NewCode/NewCodef示例代码WrapCode/WrapCo
这篇文章将为大家介绍:GoFrame 错误处理的常用方法&错误码的使用。如何自定义错误对象、如何忽略部分堆栈信息、如何自定义错误码的返回、如何获取error对象中的错误码。
用于创建一个自定义错误信息的error对象,并包含堆栈信息。
New(text string) error
Newf(fORMat string, args ...interface{}) error
用于包裹其他错误error对象,构造成多级的错误信息,包含堆栈信息。
func Wrap(err error, text string) error
func Wrapf(err error, format string, args ...interface{}) error
用于创建一个自定义错误信息的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
功能同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
}
功能同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
}
功能同NewSkip/NewSkipf,用于创建一个自定义错误信息的error对象,并且忽略部分堆栈信息(按照当前调用方法位置往上忽略),并增加错误参数输入。
func NewCodeSkip(code, skip int, text string) error
func NewCodeSkipf(code, skip int, format string, args ...interface{}) error
func Code(err error) gcode.Code
当给定的error参数不带有错误码信息时,该方法返回预定义的错误码gcode.CodeNil
通过这篇文章我们了解到使用GoFrame,如何自定义错误对象、如何忽略部分堆栈信息、如何自定义错误码的返回、如何获取error对象中的错误码。
以上就是GoFrame错误处理常用方法及错误码使用示例的详细内容,更多关于GoFrame错误处理错误码的资料请关注编程网其它相关文章!
--结束END--
本文标题: GoFrame错误处理常用方法及错误码使用示例
本文链接: https://www.lsjlt.com/news/152599.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0