Выбор ответа Middle gRPC, SOAP и другие протоколы обновлено
gRPC из браузера
Вопрос
Фронтенд хочет напрямую вызывать gRPC-сервисы из браузера. Что нужно учесть?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Браузер не даёт нужного доступа к HTTP/2, нужен gRPC-Web или BFF. Браузерные API не дают низкоуровневого доступа к HTTP/2-фреймам и трейлерам, которые нужны gRPC.
Варианты ответа
- Ничего: современные браузеры поддерживают gRPC нативно через fetch
- Нужно перейти на SOAP, он единственный работает из браузера
- gRPC работает в браузере только поверх WebSocket-соединения
- Браузер не даёт нужного доступа к HTTP/2, нужен gRPC-Web или BFFправильный ответ
Разбор
Браузерные API не дают низкоуровневого доступа к HTTP/2-фреймам и трейлерам, которые нужны gRPC. Поэтому используют gRPC-Web через прокси (например, Envoy) или ставят перед сервисами REST или GraphQL BFF. SOAP не решает задачу. WebSocket не стандартный транспорт gRPC.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.