main.go 913 B

1234567891011121314151617181920212223242526272829303132
  1. package main
  2. import (
  3. "github.com/gorilla/mux"
  4. "net/http"
  5. "standard/gokit/restful/endpoint"
  6. "standard/gokit/restful/server"
  7. "standard/gokit/restful/transport"
  8. httpTransport "github.com/go-kit/kit/transport/http"
  9. )
  10. func main() {
  11. // 1.先创建我们最开始定义的Server/server.go
  12. s := server.Server{}
  13. // 2.在用EndPoint/endpoint.go 创建业务服务
  14. hello := endpoint.MakeServerEndPointHello(s)
  15. bye := endpoint.MakeServerEndPointBye(s)
  16. // 3.使用 kit 创建 handler
  17. // 固定格式
  18. // 传入 业务服务 以及 定义的 加密解密方法
  19. helloServer := httpTransport.NewServer(hello, transport.HelloDecodeRequest, transport.HelloEncodeResponse)
  20. byeServer := httpTransport.NewServer(bye, transport.ByeDecodeRequest, transport.ByeEncodeResponse)
  21. r := mux.NewRouter()
  22. r.Handle("/hello", helloServer)
  23. r.Handle("/bye", byeServer)
  24. _ = http.ListenAndServe("0.0.0.0:8000", r)
  25. select {}
  26. }