fix(P2): 修复 import cycle — 将 apierror 移出 internal/http 避免循环依赖
This commit is contained in:
@@ -1,28 +0,0 @@
|
||||
package http
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"net/http"
|
||||
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
var (
|
||||
ErrUnauthorized = errors.New("unauthorized")
|
||||
ErrValidation = errors.New("validation error")
|
||||
)
|
||||
|
||||
func ClassifyHTTPStatus(err error) int {
|
||||
switch {
|
||||
case err == nil:
|
||||
return http.StatusOK
|
||||
case errors.Is(err, ErrUnauthorized):
|
||||
return http.StatusUnauthorized
|
||||
case errors.Is(err, ErrValidation):
|
||||
return http.StatusBadRequest
|
||||
case errors.Is(err, gorm.ErrRecordNotFound):
|
||||
return http.StatusNotFound
|
||||
default:
|
||||
return http.StatusInternalServerError
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user