Tag Archives: grpc

Nullable fields in json generated from protobuf file

Null for nil value my.proto

go mapper

Which will lead to this json response

Omit a field with nil value If you want to omit the field completely, you can use oneof approach proto

go mapper

More info on json options for grpc — https://blog.bullgare.com/2020/07/complete-list-of-swagger-options-to-protobuf-file/

Complete list of swagger options to protobuf file

Here is an example with many options that help generate proper swagger out of protofile. Original URL — https://raw.githubusercontent.com/grpc-ecosystem/grpc-gateway/master/examples/internal/proto/examplepb/a_bit_of_everything.proto.

GRPC fallback to Rest API with custom field names

When you generate JSON for Rest API from proto-file, protoc-gen-gofast generates field names for JSON in lowerCamelCase format while most of the Rest APIs use snake_case for that. And if you want to replace some legacy API with your new implementation without breaking backward compatibility, you need to fix it. There could be different ways …

Read more

Interesting alternative to grpc_cli

https://github.com/ktr0731/evans It has REPL mode and CLI mode for e2e tests I think, it could be a good alternative to grpc_cli.

Installing protobuf tools on MacOS

Installing protoc

Or follow different instructions. Installing grpc_cli Option 1. Easy way.

It is described here — https://github.com/grpc/homebrew-grpc. Option 2. Hard way — using cmake and make. NOT RECOMMENDED.

Or follow these instructions

Golang: testing http and grpc servers

HTTP server is quite easy to test — here is a nice video about it:

How to make grpc call from shell

1 https://github.com/grpc/grpc/blob/master/doc/command_line_tool.md

2 https://github.com/fullstorydev/grpcurl