Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
Esta não é a versão mais recente deste artigo. Para a versão atual, consulte a versão .NET 10 deste artigo.
Advertência
Esta versão do ASP.NET Core não é mais suportada. Para obter mais informações, consulte a Política de suporte do .NET e do .NET Core. Para a versão atual, consulte a versão .NET 9 deste artigo.
Não é possível chamar diretamente um serviço gRPC a partir de um navegador. o gRPC utiliza funcionalidades HTTP/2, e nenhum navegador oferece o nível de controlo necessário sobre pedidos web para suportar um cliente gRPC.
O gRPC no ASP.NET Core oferece duas soluções compatíveis com browser, gRPC-Web e transcodificação gRPC JSON.
gRPC-Web
gRPC-Web permite que aplicações de navegador chamem serviços gRPC com o cliente gRPC-Web e Protobuf.
- Semelhante ao gRPC normal, mas tem um wire-protocol ligeiramente diferente, o que o torna compatível com HTTP/1.1 e navegadores.
- Exige que a aplicação do navegador gere um cliente gRPC a partir de um
.protoficheiro. - Permite que as aplicações de navegador beneficiem do alto desempenho e do baixo uso de rede proporcionados pelas mensagens binárias.
O .NET tem suporte incorporado para gRPC-Web. Para mais informações, consulte gRPC-Web em ASP.NET Core gRPC apps.
Transcodificação JSON gRPC
a transcodificação JSON gRPC permite que aplicações de navegador chamem serviços gRPC como se fossem APIs RESTful com JSON.
- A aplicação de navegador não precisa de gerar um cliente gRPC nem de saber nada sobre gRPC.
- As APIs RESTful são criadas automaticamente a partir de serviços gRPC através da anotação do
.protoficheiro com metadados HTTP. - Permite que uma aplicação suporte tanto as APIs web gRPC como JSON sem duplicar o esforço de construir serviços separados para ambos.
O .NET tem suporte incorporado para criar APIs web JSON a partir de serviços gRPC. Para mais informações, consulte transcodificação JSON gRPC nos aplicativos ASP.NET Core gRPC.
Observação
a transcodificação JSON gRPC requer .NET 7 ou posterior.