Часть вторая. Как я пытался засунуть gRPC в браузер — продолжение
Предыдущая часть Картина мира: почему браузер — главный блокер для «настоящего» gRPC Если коротко, gRPC живёт поверх HTTP/2 и активно полагается на стримы. А в браузере до сих пор нет низкоуровневого API, который позволил бы JavaScript управлять HTTP/2‑стримами на том уровне, который нужен gRPC. Даже unary‑вызов в gRPC — это частный случай стрима: открыли поток, отдали запрос, забрали ответ, закрылись. Пока браузеры не дадут этот «рычаг», все WEB‑решения — это компромиссы разной степени изящности. Чем это оборачивается на практике: Нативные bidi‑стримы из браузера недоступны Приходится конвертировать транспорт: HTTP/1.1 или WebSocket → что‑то «похоже на gRPC» → gRPC/HTTP2 на бэкенде Добавляются прокси, адаптеры и слой совместимости, где теряется часть достоинств «чистого» gRPC
https://habr.com/ru/articles/944894/
#go #grpc #grpcgateway #grpcstreaming #grpcсервисы #golang #protobuf #easyp #buf #rpc