// Package consts ... // // Description : consts ... // // Author : go_developer@163.com<白茶清欢> // // Date : 2025-04-19 12:38 package consts import ( "fmt" "net/http" ) type HttpCode struct { Value any `json:"value"` Code int `json:"code"` Desc string `json:"desc"` } func newHttpCodeData(httpCode int) HttpCode { desc := http.StatusText(httpCode) if len(desc) == 0 { if httpCode == 499 { desc = "client request timeout" } else { desc = fmt.Sprintf("%v: unknown error", httpCode) } } return HttpCode{ Value: httpCode, Code: httpCode, Desc: desc, } } var ( HttpCodeList = []HttpCode{ // 1xx newHttpCodeData(http.StatusContinue), newHttpCodeData(http.StatusSwitchingProtocols), newHttpCodeData(http.StatusProcessing), newHttpCodeData(http.StatusEarlyHints), // 2xx newHttpCodeData(http.StatusOK), newHttpCodeData(http.StatusCreated), newHttpCodeData(http.StatusAccepted), newHttpCodeData(http.StatusNonAuthoritativeInfo), newHttpCodeData(http.StatusNoContent), newHttpCodeData(http.StatusResetContent), newHttpCodeData(http.StatusPartialContent), newHttpCodeData(http.StatusMultiStatus), newHttpCodeData(http.StatusAlreadyReported), newHttpCodeData(http.StatusIMUsed), // 3xx newHttpCodeData(http.StatusMultipleChoices), newHttpCodeData(http.StatusMovedPermanently), newHttpCodeData(http.StatusFound), newHttpCodeData(http.StatusSeeOther), newHttpCodeData(http.StatusNotModified), newHttpCodeData(http.StatusUseProxy), newHttpCodeData(http.StatusTemporaryRedirect), newHttpCodeData(http.StatusPermanentRedirect), // 4xx newHttpCodeData(http.StatusBadRequest), newHttpCodeData(http.StatusUnauthorized), newHttpCodeData(http.StatusPaymentRequired), newHttpCodeData(http.StatusForbidden), newHttpCodeData(http.StatusNotFound), newHttpCodeData(http.StatusMethodNotAllowed), newHttpCodeData(http.StatusNotAcceptable), newHttpCodeData(http.StatusProxyAuthRequired), newHttpCodeData(http.StatusRequestTimeout), newHttpCodeData(http.StatusConflict), newHttpCodeData(http.StatusGone), newHttpCodeData(http.StatusLengthRequired), newHttpCodeData(http.StatusPreconditionFailed), newHttpCodeData(http.StatusRequestEntityTooLarge), newHttpCodeData(http.StatusRequestURITooLong), newHttpCodeData(http.StatusUnsupportedMediaType), newHttpCodeData(http.StatusRequestedRangeNotSatisfiable), newHttpCodeData(http.StatusExpectationFailed), newHttpCodeData(http.StatusTeapot), newHttpCodeData(http.StatusMisdirectedRequest), newHttpCodeData(http.StatusUnprocessableEntity), newHttpCodeData(http.StatusLocked), newHttpCodeData(http.StatusFailedDependency), newHttpCodeData(http.StatusTooEarly), newHttpCodeData(http.StatusUpgradeRequired), newHttpCodeData(http.StatusPreconditionRequired), newHttpCodeData(http.StatusTooManyRequests), newHttpCodeData(http.StatusRequestHeaderFieldsTooLarge), newHttpCodeData(http.StatusUnavailableForLegalReasons), newHttpCodeData(499), // 5xx newHttpCodeData(http.StatusInternalServerError), newHttpCodeData(http.StatusNotImplemented), newHttpCodeData(http.StatusBadGateway), newHttpCodeData(http.StatusServiceUnavailable), newHttpCodeData(http.StatusGatewayTimeout), newHttpCodeData(http.StatusHTTPVersionNotSupported), newHttpCodeData(http.StatusVariantAlsoNegotiates), newHttpCodeData(http.StatusInsufficientStorage), newHttpCodeData(http.StatusLoopDetected), newHttpCodeData(http.StatusNotExtended), newHttpCodeData(http.StatusNetworkAuthenticationRequired), } )