func (i *AuthInterceptor) Unary() grpc.UnaryClientInterceptor {
	return func(
		ctx context.Context,
		method string,
		req,
		reply interface{},
		cc *grpc.ClientConn,
		invoker grpc.UnaryInvoker,
		opts ...grpc.CallOption,
	) error {
		ctx = metadata.NewOutgoingContext(ctx, metadata.Pairs("authorization", i.token))
		return invoker(ctx, method, req, reply, cc, opts...)
	}
}
Unary creates a unary server interceptor for authorization.
package client
import (
	"context"
	"google.golang.org/grpc"
	"google.golang.org/grpc/metadata"
)
type AuthInterceptor struct {
	token string
}
func NewAuthInterceptor(token string) *AuthInterceptor {
	return &AuthInterceptor{
		token: token,
	}
}