В середине службы, которая играет роль клиентская версия (в будущем будет добавлена и серверная версия), я использовал пакет GRPC.ASPNetCore с этой опцией:
Код: Выделить всё
option.IgnoreUnknownServices = true;Запрос десериализации< /strong>
Я использую protobuf-net и его API-интерфейсы отражения для генерации кода C# для моих прототипов во время выполнения и компиляции их с помощью Roslyn, чтобы иметь эквивалентный тип CLR для моих прототипов. . После этого я использую сериализатор protobuf-net для десериализации данных, которые я прочитал из потока запросов моего специального промежуточного программного обеспечения.
- Могу ли я читать сжатые сообщения ?
- Как я могу читать потоковую передачу сервера, потоковую передачу клиента или двунаправленную потоковую передачу?
- Правильен ли этот подход или существует ли для этого какая-либо встроенная технология сценарий?
Пересылка запроса на другую службу
После обнаружения целевого узла (в случае, если этот узел принимает запрос gRPC) я должен переслать входящий Http запрос к указанному узлу. Есть ли быстрый способ перенаправить такой запрос в другую службу?
Другой альтернативой является создание клиента gRPC во время выполнения и вызов его с десериализованным значением из потока HTTP-запросов. но мне нужно придумать, как это сделать.
В моей голове гораздо больше вопросов и неясных моментов. Буду признателен, если вы ответите на мои вопросы или предложите какие-либо ссылки.
Мой проект здесь.
Подробнее здесь: https://stackoverflow.com/questions/662 ... ecar-net-5
Мобильная версия