errorsx

package
v0.0.31 Latest Latest
Warning

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

Go to latest
Published: Sep 11, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// METADATA_KEY_CONFLICT_TYPE 标识冲突类型。
	METADATA_KEY_CONFLICT_TYPE = "conflict_type"
	// METADATA_KEY_RESOURCE 标识资源名称。
	METADATA_KEY_RESOURCE = "resource"
	// METADATA_KEY_FIELD 标识字段名称。
	METADATA_KEY_FIELD = "field"
	// METADATA_KEY_CONSTRAINT 标识数据库约束名称。
	METADATA_KEY_CONSTRAINT = "constraint"
	// METADATA_KEY_CHILD_RESOURCE 标识子资源名称。
	METADATA_KEY_CHILD_RESOURCE = "child_resource"
	// METADATA_KEY_CURRENT_STATE 标识当前状态。
	METADATA_KEY_CURRENT_STATE = "current_state"
	// METADATA_KEY_EXPECTED_STATE 标识期望状态。
	METADATA_KEY_EXPECTED_STATE = "expected_state"

	// CONFLICT_TYPE_UNIQUE_VIOLATION 表示唯一约束冲突。
	CONFLICT_TYPE_UNIQUE_VIOLATION = "unique_violation"
	// CONFLICT_TYPE_HAS_CHILDREN 表示仍存在子资源。
	CONFLICT_TYPE_HAS_CHILDREN = "has_children"
	// CONFLICT_TYPE_STATE_CONFLICT 表示状态冲突。
	CONFLICT_TYPE_STATE_CONFLICT = "state_conflict"
	// CONFLICT_TYPE_PROTECTED_RESOURCE 表示受保护资源。
	CONFLICT_TYPE_PROTECTED_RESOURCE = "protected_resource"
)
View Source
const (
	// METADATA_KEY_MESSAGE_KEY 标识稳定的国际化消息键。
	METADATA_KEY_MESSAGE_KEY = "message_key"
	// METADATA_KEY_MESSAGE_ARGS 标识国际化消息命名参数。
	METADATA_KEY_MESSAGE_ARGS = "message_args"
)
View Source
const (
	// ReasonInvalidArgument 表示请求参数错误。
	ReasonInvalidArgument = "INVALID_ARGUMENT"
	// ReasonUnauthenticated 表示认证失败。
	ReasonUnauthenticated = "UNAUTHENTICATED"
	// ReasonPermissionDenied 表示权限不足。
	ReasonPermissionDenied = "PERMISSION_DENIED"
	// ReasonResourceNotFound 表示资源不存在。
	ReasonResourceNotFound = "RESOURCE_NOT_FOUND"
	// ReasonConflict 表示资源状态冲突。
	ReasonConflict = "CONFLICT"
	// ReasonInternalError 表示服务内部错误。
	ReasonInternalError = "INTERNAL_ERROR"
)

Variables

This section is empty.

Functions

func Conflict

func Conflict(message string) *errors.Error

Conflict 构造状态冲突错误。

func HasChildrenConflict

func HasChildrenConflict(message, resource, childResource string) *errors.Error

HasChildrenConflict 构造存在子资源的冲突错误。

func Internal

func Internal(message string) *errors.Error

Internal 构造内部错误。

func InvalidArgument

func InvalidArgument(message string) *errors.Error

InvalidArgument 构造请求参数错误。

func IsDuplicateKey

func IsDuplicateKey(err error) bool

IsDuplicateKey 判断是否命中了唯一键冲突。

func IsStructuredError

func IsStructuredError(err error) bool

IsStructuredError 判断错误是否已经携带稳定 reason。

func MessageKey

func MessageKey(message string) string

MessageKey 返回由固定源文生成的兼容消息键。

func PermissionDenied

func PermissionDenied(message string) *errors.Error

PermissionDenied 构造权限不足错误。

func ProtectedResourceConflict

func ProtectedResourceConflict(message, resource string) *errors.Error

ProtectedResourceConflict 构造受保护资源冲突错误。

func ResourceNotFound

func ResourceNotFound(message string) *errors.Error

ResourceNotFound 构造资源不存在错误。

func StateConflict

func StateConflict(message, resource, currentState, expectedState string) *errors.Error

StateConflict 构造状态冲突错误。

func Unauthenticated

func Unauthenticated(message string) *errors.Error

Unauthenticated 构造认证失败错误。

func UniqueConflict

func UniqueConflict(message, resource, field, constraint string) *errors.Error

UniqueConflict 构造唯一约束冲突错误。

func WithMessageKey

func WithMessageKey(structuredErr *errors.Error, messageKey string, messageArgs map[string]string) *errors.Error

WithMessageKey 为结构化错误补充稳定消息键和命名参数。

func WrapIfNeeded

func WrapIfNeeded(err error, fallback *kratosErrors.Error) error

WrapIfNeeded 在错误尚未完成分类时,使用兜底错误包装。

func WrapInternal

func WrapInternal(err error, message string) error

WrapInternal 在错误尚未完成分类时,包装成内部错误。

Types

This section is empty.

Jump to

Keyboard shortcuts

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