# gRPC

> Sert un service gRPC depuis son seul .proto de trois façons : en gRPC natif, en gRPC-Web pour un navigateur, et en REST/JSON aux routes que les annotations…

Concept - Depuis la version 1.1.0 - Flexway v1.6.3 - https://flexway.io/docs/product-grpc/

> Guide produit : ce que la capacité apporte, pour qui, ses limites et la version qui l'a livrée - sans syntaxe de configuration.

| | |
| --- | --- |
| **Ce que ça fait** | Sert un service gRPC depuis son seul `.proto` de trois façons : en gRPC natif, en gRPC-Web pour un navigateur, et en REST/JSON aux routes que les annotations standard déclarent. Une méthode est **une** opération, quel que soit le protocole d'entrée |
| **Pourquoi c'est important** | Une équipe écrit un service gRPC et l'offre à un client web ou à un partenaire REST sans écrire de passerelle de traduction. Même identité, même quota, même audit, quelle que soit la porte |
| **Cas d'usage** | Exposer un service interne gRPC à une application web ; publier une API REST générée depuis le `.proto` ; relayer un flux serveur gRPC en SSE |
| **Limites** | Les flux client et bidirectionnels restent servis en gRPC seulement, pas en REST ; certaines formes d'annotation REST sont refusées au chargement (variables sur plusieurs segments, verbes) |
| **Depuis** | `1.1.0` |
| **Configurer** | [Un amont gRPC](https://flexway.io/docs/operations-grpc/) |
