main.go 851 B

1234567891011121314151617181920212223242526272829303132333435
  1. package main
  2. import (
  3. "context"
  4. "dy-test/dyrpc/helper"
  5. "dy-test/dyrpc/services/prod"
  6. "github.com/grpc-ecosystem/grpc-gateway/v2/runtime"
  7. "google.golang.org/grpc"
  8. "log"
  9. "net/http"
  10. )
  11. const (
  12. certFile = "/Users/duyong/workspace/gotest/dyrpc/ssl/client/client.pem"
  13. keyFile = "/Users/duyong/workspace/gotest/dyrpc/ssl/client/client.key"
  14. caFile = "/Users/duyong/workspace/gotest/dyrpc/ssl/ca/ca.pem"
  15. )
  16. func main() {
  17. gwmux := runtime.NewServeMux()
  18. opt := []grpc.DialOption{grpc.WithTransportCredentials(helper.GetCredentials(certFile, keyFile, caFile))}
  19. err := prod.RegisterProdServiceHandlerFromEndpoint(context.Background(), gwmux, "localhost:8081", opt)
  20. if err != nil {
  21. log.Fatal(err)
  22. }
  23. httpServer := &http.Server{
  24. Addr: ":8080",
  25. Handler: gwmux,
  26. }
  27. err = httpServer.ListenAndServe()
  28. if err != nil {
  29. log.Fatal(err)
  30. }
  31. }