func (api *API) HTTPHandler(ctx context.Context, grpcAddr string) (http.Handler, error) {
	enc := new(protoutil.JSONPb)
	mux := runtime.NewServeMux(runtime.WithMarshalerOption(enc.ContentType(), enc))

	opts := []grpc.DialOption{
		grpc.WithInsecure(),
		// Replace the default dialer that connects through proxy when HTTP_PROXY is set.
		grpc.WithContextDialer(func(ctx context.Context, addr string) (net.Conn, error) {
			return (&net.Dialer{}).DialContext(ctx, "tcp", addr)
		}),
	}

	err := pb.RegisterAdminHandlerFromEndpoint(ctx, mux, grpcAddr, opts)
	if err != nil {
		return nil, err
	}
	return mux, nil
}
func (api *API) HTTPHandler(ctx context.Context, grpcAddr string) (http.Handler, error) {
	enc := new(protoutil.JSONPb)
	mux := runtime.NewServeMux(runtime.WithMarshalerOption(enc.ContentType(), enc))

	opts := []grpc.DialOption{
		grpc.WithInsecure(),
		
		grpc.WithContextDialer(func(ctx context.Context, addr string) (net.Conn, error) {
			return (&net.Dialer{}).DialContext(ctx, "tcp", addr)
		}),
	}

	err := pb.RegisterAdminHandlerFromEndpoint(ctx, mux, grpcAddr, opts)
	if err != nil {
		return nil, err
	}
	return mux, nil
}
func ( api * API ) HTTPHandler ( ctx context . Context , grpcAddr string ) ( http . Handler , error ) { enc := new ( protoutil . JSONPb ) mux := runtime . NewServeMux ( runtime . WithMarshalerOption ( enc . ContentType ( ) , enc ) ) opts := [ ] grpc . DialOption { grpc . WithInsecure ( ) , // Replace the default dialer that connects through proxy when HTTP_PROXY is set. grpc . WithContextDialer ( func ( ctx context . Context , addr string ) ( net . Conn , error ) { return ( & net . Dialer { } ) . DialContext ( ctx , " " , addr ) } ) , } err := pb . RegisterAdminHandlerFromEndpoint ( ctx , mux , grpcAddr , opts ) if err != nil { return nil , err } return mux , nil }
// HTTPHandler returns an HTTP handler for a REST API gateway to the given grpc address.
HTTPHandler returns an HTTP handler for a REST API gateway to the given grpc address .