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  }