Связь между C# и Java

Я хочу использовать GRPC в C# и Java.

C# должен действовать как сервер, а Java как клиент.

Я пользователь Windows и не знаю, как создать файл прото для C# и Java.

На сайте я нашел только учебники для конкретного языка, но не для разных языков.

2 ответа

Использование gRPC в C# и Java должно быть таким же простым, как и использование их по отдельности. Все, что вам нужно сделать, это использовать то же самое .proto файл для генерации кода для каждого. .proto определяет методы и сообщения, с которыми C# и Java будут совместимы.

Если вы посмотрите на каждый набор примеров, они используют один и тот же .proto (То есть, helloworld.proto или же route_guide.proto). Примеры совместимы между языками (т. Е. Сервер C# helloworld может взаимодействовать с клиентом Java helloworld).

Задать службы gRPC в файлах прототипов довольно просто; Я полагаю, что если просто посмотреть на примеры, это станет достаточно ясно. Для получения дополнительной информации об определении прототипа сообщений вы можете обратиться к документации по protobuf.

Самый простой способ разрешить этим приложениям взаимодействовать - создать клиент-серверные приложения с использованием сокетов... C#, выступая в роли сервера, должен прослушивать клиентское соединение через указанный порт, а приложение Java, выступающее в роли клиента, должно отправлять запрос на подключение к тому же порту, который слушает приложение C#... Существа, которые подключены этими приложениями через сетевой язык, больше не актуальны. Вы можете просто свободно передавать данные между приложениями, хотя каждое приложение может обрабатывать данные по-своему. Надеюсь это поможет.

Другие вопросы по тегам