Go code
package main
import (
"context"
"fmt"
grpc_server_grpc "github.com/exapsy/grpc_server/proto"
"google.golang.org/grpc"
"net"
)
type HelloWorldService struct {
grpc_server_grpc.UnimplementedHelloWorldServer
}
func (HelloWorldService) SayHello(_ context.Context, in *grpc_server_grpc.HelloWorldReq) (*grpc_server_grpc.HelloWorldRes, error) {
return &grpc_server_grpc.HelloWorldRes{
Name: "Hello " + in.Name,
}, nil
}
func main() {
var server *grpc.Server
var serverOptions []grpc.ServerOption
server = grpc.NewServer(serverOptions...)
server.RegisterService(&grpc_server_grpc.HelloWorld_ServiceDesc, HelloWorldService{})
addr := "localhost:8008"
lis, err := net.Listen("tcp", addr)
if err != nil {
panic(fmt.Errorf("failed to listen: %v", err))
}
fmt.Printf("serving grpc server at %s\n", addr)
err = server.Serve(lis)
if err != nil {
panic(fmt.Sprintf("failed to serve: %v", err))
}
}
Command
$ grpcurl -insecure 127.0.0.1:8080 HelloWorld/SayHello
Failed to dial target host "127.0.0.1:8080": tls: first record does not look like a TLS handshake