xerrors

package
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 7, 2024 License: Apache-2.0 Imports: 2 Imported by: 0

README

以下是根据代码从小到大排序的自定义错误常量表格,并增加了中文释义和通常出现这些错误的应用场景:

Key Code Message 中文释义 应用场景描述
ErrPaymentRequired 402 Payment required 需要支付 通常出现在需要用户付费的场景,如在线购买服务或商品。
ErrUnauthorized 401 Unauthorized 未授权 用户尝试访问需要认证的资源,但未提供有效认证信息。
ErrForbidden 403 Forbidden 禁止访问 用户尝试访问被禁止的资源,如权限不足或资源受限。
ErrBadRequest 400 Bad request 错误的请求 客户端请求格式错误或请求参数不符合要求。
ErrUnsupportedMediaType 415 Unsupported media type 不支持的媒体类型 服务器无法处理请求的媒体类型,如请求的文件格式不支持。
ErrResourceExists 409 Resource already exists 资源已存在 尝试创建已存在的资源,如数据库记录或文件。
ErrConflict 409 Conflict 冲突 资源版本冲突,如并发操作导致的数据不一致。
ErrTooManyRequests 429 Too many requests 请求过多 用户在一定时间内发送的请求超出了服务器的限制。
ErrRequestTimeout 408 Request timeout 请求超时 请求处理时间超出服务器设定的超时时间。
ErrOperationTimeout 408 Operation timed out 操作超时 某个操作,如数据库操作,超出了预设的超时时间。
ErrPayloadTooLarge 413 Payload too large 请求体过大 请求体的大小超出了服务器能够处理的限制。
ErrNetworkAuthenticationRequired 511 Network authentication required 需要网络认证 通常出现在网络层面需要用户进行身份验证的场景。
ErrInsufficientStorage 507 Insufficient storage 存储空间不足 服务器存储资源不足,无法完成请求。
ErrMethodNotAllowed 405 Method not allowed 方法不被允许 请求使用了不被允许的HTTP方法,如DELETE。
ErrNotFound 404 Resource not found 资源未找到 请求的资源不存在,如页面、数据或API端点。
ErrInternalServerError 500 Internal server error 服务器内部错误 服务器遇到意外情况,无法完成请求。
ErrDatabaseConnectionFailed 6001 Database connection failed 数据库连接失败 无法建立与数据库的连接,可能由于配置错误或服务不可用。
ErrDatabaseQueryFailed 6002 Database query failed 数据库查询失败 数据库查询操作失败,可能由于SQL错误或资源问题。
ErrDatabaseUpdateFailed 6003 Database update failed 数据库更新失败 更新数据库操作失败,可能由于数据完整性问题。
ErrDatabaseNotFound 6004 Database or table not found 数据库或表未找到 指定的数据库或表不存在。
ErrDuplicateRecord 6005 Duplicate record 记录重复 尝试插入或更新数据库时违反了唯一性约束。
ErrInsufficientDatabasePermissions 6006 Insufficient database permissions 数据库权限不足 数据库用户权限不足,无法执行某些操作。
ErrDatabaseTimeout 6007 Database operation timed out 数据库操作超时 数据库操作超出了预设的超时限制。
ErrDatabaseTransactionFailed 6008 Database transaction failed 数据库事务失败 数据库事务无法完成,可能由于并发问题或资源冲突。
ErrDatabaseIntegrityConstraintViolation 6009 Database integrity constraint violation 数据库完整性约束违反 数据库操作违反了完整性约束,如外键约束。
ErrDatabaseDiskFull 6010 Database disk is full 数据库磁盘已满 数据库磁盘空间不足,无法进行写入操作。
ErrDatabaseServiceUnavailable 6011 Database service unavailable 数据库服务不可用 数据库服务当前不可用,可能由于维护或其他原因。
ErrDNSResolutionFailed 6012 DNS resolution failed for the given hostname. DNS解析失败
这些错误常量及其应用场景描述可以帮助开发者更好地理解在何种情况下应该使用特定的错误代码,以及如何根据实际情况进行适当的错误处理。在实际开发中,可能还需要根据具体的业务逻辑和需求来调整和扩展这个列表。

Documentation

Index

Constants

View Source
const (
	// Client Errors
	ErrBadRequest = iota + 400
	ErrUnauthorized
	ErrForbidden
	ErrNotFound
	ErrMethodNotAllowed
	ErrNotAcceptable
	ErrRequestTimeout
	ErrConflict
	ErrGone
	ErrPreconditionFailed
	ErrPayloadTooLarge
	ErrUnsupportedMediaType
	ErrTooManyRequests
	// Server Errors
	ErrInternalServerError = iota + 500
	ErrNotImplemented
	ErrBadGateway
	ErrServiceUnavailable
	ErrGatewayTimeout
	ErrHTTPVersionNotSupported
	ErrVariantAlsoNegotiates
	ErrInsufficientStorage
	ErrLoopDetected
	ErrNotExtended
	ErrNetworkAuthenticationRequired
)

HTTP相关错误代码

View Source
const (
	ErrDatabaseConnectionFailed = iota + 6001
	ErrDatabaseQueryFailed
	ErrDatabaseUpdateFailed
	ErrDatabaseNotFound
	ErrDuplicateRecord
	ErrInsufficientDatabasePermissions
	ErrDatabaseTimeout
	ErrDatabaseTransactionFailed
	ErrDatabaseIntegrityConstraintViolation
	ErrDatabaseDiskFull
	ErrDatabaseServiceUnavailable
)

数据库相关错误代码

View Source
const (
	ErrResourceNotFound                                        = iota + 8001 // 资源未找到
	ErrResourceAlreadyExists                                                 // 资源已存在
	ErrResourceInvalid                                                       // 资源无效
	ErrResourceNotAuthorized                                                 // 无权限访问资源
	ErrResourceNotAllowed                                                    // 资源不允许操作
	ErrResourceNotImplemented                                                // 资源未实现
	ErrResourceNotSupported                                                  // 资源不被支持
	ErrResourceNotAvailable                                                  // 资源不可用
	ErrResourceNotAvailableInThisRegion                                      // 该区域中资源不可用
	ErrResourceNotAvailableInThisZone                                        // 该区域中资源不可用
	ErrResourceNotAvailableInThisEnvironment                                 // 该环境中资源不可用
	ErrResourceNotAvailableInThisEnvironmentType                             // 该环境类型中资源不可用
	ErrResourceNotAvailableInThisEnvironmentVersion                          // 该环境版本中资源不可用
	ErrResourceNotAvailableInThisEnvironmentVersionType                      // 该环境版本类型中资源不可用
	ErrResourceNotAvailableInThisEnvironmentVersionTypeVersion               // 该环境版本类型版本中资源不可用
)

定义资源操作过程中可能遇到的错误类型

View Source
const (
	ErrEnvBinding = iota + 5001
	ErrUnmarshal
)

EnvBindingErrorCode 定义绑定环境变量失败的错误码。

View Source
const (
	ErrDNSResolutionFailed = iota + 7001
)

网络相关错误代码

View Source
const ErrFileNotFound = 4001

文件不存在的err

Variables

This section is empty.

Functions

This section is empty.

Types

type Error

type Error struct {
	Code    int    // Error code
	Message string // Error message
	Cause   error  // Original error causing this error
	Stack   string // Error stack trace
}

Error represents a unified error type.

func New

func New(code int, message string) *Error

New creates a new Error instance.

func Wrap

func Wrap(err error, code int, message string) *Error

Wrap wraps an existing error with additional context.

func (*Error) Error

func (e *Error) Error() string

Error implements the error interface.

func (*Error) Unwrap

func (e *Error) Unwrap() error

Unwrap returns the next error in error chain.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL