以下是一些常见的内置错误码:
1. 通用错误码:
const (
CODE_SUCCESS = 0 // 操作成功
CODE_FAIL = 1000 // 操作失败
CODE_NOT_FOUND = 1001 // 未找到记录
CODE_SERVER_ERROR = 500 // 服务器内部错误
CODE_CLIENT_CLOSED = 499 // 客户端关闭连接
CODE_REQUEST_REFUSED = 403 // 请求被拒绝
)
2. HTTP 错误码:
const (
CODE_HTTP_METHOD_NOT_ALLOWED = 405 // HTTP方法不允许
CODE_HTTP_REQUEST_ERROR = 400 // HTTP请求错误
)
这些内置错误码可以在你的应用程序中直接使用,无需额外定义。例如:
package main
import (
"fmt"
"github.com/gogf/gf/errors/gerror"
)
func main() {
err := businessLogic()
if err != nil {
// 获取错误消息
fmt.Println("Error:", err.Error())
// 获取错误码
code := gerror.Code(err)
fmt.Println("Error Code:", code)
// 判断是否包含特定错误码
if gerror.HasCode(err, gerror.CODE_NOT_FOUND) {
fmt.Println("Handling not found error")
}
}
}
func businessLogic() error {
// 模拟一个未找到记录的错误
err := gerror.New("Record not found").Code(gerror.CODE_NOT_FOUND)
return err
}
在这个例子中,businessLogic 函数返回一个使用内置的 CODE_NOT_FOUND 错误码的错误对象。在 main 函数中,我们捕获并处理了错误,通过 gerror.Code 获取错误码,并通过 gerror.HasCode 判断是否包含特定的错误码。
这样,使用内置错误码可以使错误处理更加标准化,减少手动定义错误码的工作。在实际应用中,你可以根据具体的业务逻辑选择合适的错误码。
转载请注明出处:http://www.zyzy.cn/article/detail/7569/GoFrame