File tree Expand file tree Collapse file tree 1 file changed +32
-0
lines changed
Expand file tree Collapse file tree 1 file changed +32
-0
lines changed Original file line number Diff line number Diff line change 1+ // Copyright 2021 Liuxiangchao [email protected] . All rights reserved. 2+
3+ package errors
4+
5+ import (
6+ "errors"
7+ "google.golang.org/grpc/codes"
8+ "google.golang.org/grpc/status"
9+ )
10+
11+ // HumanError 格式化GRPC相关错误
12+ func HumanError (err error ) error {
13+ if err == nil {
14+ return err
15+ }
16+ errStatus , ok := status .FromError (err )
17+ if ! ok {
18+ return err
19+ }
20+ switch errStatus .Code () {
21+ case codes .InvalidArgument :
22+ return errors .New ("错误的RPC参数:" + err .Error ())
23+ case codes .DeadlineExceeded :
24+ return errors .New ("RPC操作超时,请重试:" + err .Error ())
25+ case codes .Unimplemented :
26+ return errors .New ("请求的RPC服务或方法不存在,可能是没有升级API节点或者当前节点没有升级:" + err .Error ())
27+ case codes .Unavailable :
28+ return errors .New ("RPC当前不可用,请确保API节点已启动,并检查当前节点和API节点之间的网络连接是正常的:" + err .Error ())
29+ }
30+
31+ return err
32+ }
You can’t perform that action at this time.
0 commit comments