Сгенерированный код, заглушка, не взаимодействует с транспортным уровнем и наоборот. вместо этого вам нужно использовать канальный слой, чтобы они взаимодействовали друг с другом. Каждая реализация канала в gRP C является транспортной спецификацией c, такой как NettyChannel, OkHttpChannel и InProcessChannel (или сервер на стороне сервера).
// GreeterGrpc is generated code to create a stub
YourServiceGrpc.newBlockingStub(channel);
, где канал может использовать один из этих 3 предоставленных транспортов; Netty, OkHttp, InProcess.
ManagedChannel channel =
NettyChannelBuilder.forTarget(target).build();
//or, OkHttpChannelBuilder.forTarget(target).build();
//or, InProcessChannelBuilder.forTarget(target).build();
gRP C также предоставляет загрузчик услуг для предоставления предпочтительного транспорта через ManagedChannelProvider . Вы можете использовать ManagedChannelBuilder
, чтобы использовать параметры среды c transport.