Skip to content

Instantly share code, notes, and snippets.

@kostyay
Created September 26, 2020 16:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kostyay/d1147f2dce4868debac0ac01fd07d395 to your computer and use it in GitHub Desktop.
Save kostyay/d1147f2dce4868debac0ac01fd07d395 to your computer and use it in GitHub Desktop.
time-server
package main
import (
"context"
"log"
"net"
"time"
pb "github.com/kostyay/grpc-web-example/time/goclient/time/v1"
"google.golang.org/grpc"
)
const (
listenAddress = "0.0.0.0:9090"
)
type timeService struct {
}
func (t *timeService) GetCurrentTime(ctx context.Context, req *pb.GetCurrentTimeRequest) (*pb.GetCurrentTimeResponse, error) {
log.Println("Got time request")
return &pb.GetCurrentTimeResponse{CurrentTime: time.Now().String()}, nil
}
func main() {
log.Printf("Time service starting on %s", listenAddress)
lis, err := net.Listen("tcp", listenAddress)
if err != nil {
log.Fatalf("failed to listen: %v", err)
}
s := grpc.NewServer()
pb.RegisterTimeServiceServer(s, &timeService{})
if err := s.Serve(lis); err != nil {
log.Fatalf("failed to serve: %v", err)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment