gitee.com/liuxuezhan/go-micro-v1.18.0@v1.0.0/server/grpc/error.go (about) 1 package grpc 2 3 import ( 4 "net/http" 5 6 "gitee.com/liuxuezhan/go-micro-v1.18.0/errors" 7 "google.golang.org/grpc/codes" 8 ) 9 10 func microError(err *errors.Error) codes.Code { 11 switch err { 12 case nil: 13 return codes.OK 14 } 15 16 switch err.Code { 17 case http.StatusOK: 18 return codes.OK 19 case http.StatusBadRequest: 20 return codes.InvalidArgument 21 case http.StatusRequestTimeout: 22 return codes.DeadlineExceeded 23 case http.StatusNotFound: 24 return codes.NotFound 25 case http.StatusConflict: 26 return codes.AlreadyExists 27 case http.StatusForbidden: 28 return codes.PermissionDenied 29 case http.StatusUnauthorized: 30 return codes.Unauthenticated 31 case http.StatusPreconditionFailed: 32 return codes.FailedPrecondition 33 case http.StatusNotImplemented: 34 return codes.Unimplemented 35 case http.StatusInternalServerError: 36 return codes.Internal 37 case http.StatusServiceUnavailable: 38 return codes.Unavailable 39 } 40 41 return codes.Unknown 42 }