github.com/keysonZZZ/kmg@v0.0.0-20151121023212-05317bfd7d39/kmgRpc/testPackage/server.go (about) 1 package testPackage 2 3 import ( 4 "errors" 5 "github.com/bronze1man/kmg/kmgNet/kmgHttp" 6 "github.com/bronze1man/kmg/kmgTime" 7 "time" 8 ) 9 10 type Demo struct { 11 } 12 13 func (s *Demo) PostScoreInt(LbId string, Score int) (Info string, err error) { 14 if Score == 1 { 15 return LbId, nil 16 } else { 17 return "", errors.New("Score!=1") 18 } 19 } 20 21 type DemoRequest struct { 22 } 23 24 func (s *Demo) DemoFunc2(Req1 DemoRequest, Req2 *DemoRequest) (err error) { 25 return nil 26 } 27 28 //返回参数没有名字 29 func (s *Demo) DemoFunc3(Req1 DemoRequest, Req2 *DemoRequest) error { 30 return nil 31 } 32 33 //没有返回参数 34 func (s *Demo) DemoFunc4(Req1 DemoRequest, Req2 *DemoRequest) { 35 return 36 } 37 38 //有返回参数,但是不包含error 39 func (s *Demo) DemoFunc5(Req1 DemoRequest, Req2 *DemoRequest) (Info string) { 40 return "" 41 } 42 43 //不管私有方法 44 func (s *Demo) demoFunc6(Req1 DemoRequest, Req2 *DemoRequest) (Info string) { 45 return "" 46 } 47 48 //返回值变成一个参数 49 func (s *Demo) DemoFunc7(Req1 DemoRequest, Req2 *DemoRequest) (Response string) { 50 return "" 51 } 52 53 // 允许有 小写的参数名 54 func (s *Demo) DemoFunc8(req1 DemoRequest, req2 *DemoRequest, req3 int) (info string, err error) { 55 if req3 == 1 { 56 return "info1", nil 57 } 58 return "info", nil 59 } 60 61 func (s *Demo) DemoTime(t time.Time) (out time.Time) { 62 return t.In(kmgTime.DefaultTimeZone).Add(time.Hour + time.Millisecond + time.Nanosecond) 63 } 64 65 func (s *Demo) DemoTime2(t time.Time) (out time.Time) { 66 return t.In(kmgTime.DefaultTimeZone).Add(time.Hour + time.Millisecond) 67 } 68 69 func (s *Demo) DemoClientIp(httpCtx *kmgHttp.Context) (ip string) { 70 return httpCtx.MustGetClientIp().String() 71 }