Grpc.Net.Client.Web
2.65.0
Prefix Reserved
See the version list below for details.
dotnet add package Grpc.Net.Client.Web --version 2.65.0
NuGet\Install-Package Grpc.Net.Client.Web -Version 2.65.0
<PackageReference Include="Grpc.Net.Client.Web" Version="2.65.0" />
<PackageVersion Include="Grpc.Net.Client.Web" Version="2.65.0" />
<PackageReference Include="Grpc.Net.Client.Web" />
paket add Grpc.Net.Client.Web --version 2.65.0
#r "nuget: Grpc.Net.Client.Web, 2.65.0"
#:package Grpc.Net.Client.Web@2.65.0
#addin nuget:?package=Grpc.Net.Client.Web&version=2.65.0
#tool nuget:?package=Grpc.Net.Client.Web&version=2.65.0
Grpc.Net.Client.Web
The .NET gRPC client can be configured to make gRPC-Web calls. This is useful for Blazor WebAssembly apps, which are hosted in the browser and have the same HTTP limitations of JavaScript code. Calling gRPC-Web with a .NET client is the same as HTTP/2 gRPC. The only modification is how the channel is created.
To use gRPC-Web:
- Add a reference to the Grpc.Net.Client.Web package.
- Ensure the reference to Grpc.Net.Client package is 2.29.0 or greater.
- Configure the channel to use the
GrpcWebHandler:
var channel = GrpcChannel.ForAddress("https://localhost:5001", new GrpcChannelOptions
{
HttpHandler = new GrpcWebHandler(new HttpClientHandler())
});
var client = new Greeter.GreeterClient(channel);
var response = await client.SayHelloAsync(new HelloRequest { Name = ".NET" });
The preceding code:
- Configures a channel to use gRPC-Web.
- Creates a client and makes a call using the channel.
GrpcWebHandler has the following configuration options:
- InnerHandler: The underlying
HttpMessageHandlerthat makes the gRPC HTTP request, for example,HttpClientHandler. - GrpcWebMode: An enumeration type that specifies whether the gRPC HTTP request
Content-Typeisapplication/grpc-weborapplication/grpc-web-text.GrpcWebMode.GrpcWebconfigures content to be sent without encoding. Default value.GrpcWebMode.GrpcWebTextconfigures content to be base64 encoded. Required for server streaming calls in browsers.
- HttpVersion: HTTP protocol
Versionused to setHttpRequestMessage.Versionon the underlying gRPC HTTP request. gRPC-Web doesn't require a specific version and doesn't override the default unless specified.
gRPC-Web and streaming
Traditional gRPC over HTTP/2 supports streaming in all directions. gRPC-Web offers limited support for streaming:
- gRPC-Web browser clients don't support calling client streaming and bidirectional streaming methods.
- gRPC-Web .NET clients don't support calling client streaming and bidirectional streaming methods over HTTP/1.1.
- ASP.NET Core gRPC services hosted on Azure App Service and IIS don't support bidirectional streaming.
When using gRPC-Web, we only recommend the use of unary methods and server streaming methods.
Links
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- System.Memory (>= 4.5.3)
-
.NETStandard 2.1
- No dependencies.
-
net6.0
- No dependencies.
-
net7.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages (51)
Showing the top 5 NuGet packages that depend on Grpc.Net.Client.Web:
| Package | Downloads |
|---|---|
|
ArmoniK.Api.Client
Package Description |
|
|
Sitko.Core.Grpc.Client
Sitko.Core is a set of libraries to help build .NET Core applications fast |
|
|
IndependentReserve.Grpc
Basic types used by IndependentReserve.Grpc.Tools package This package contains .NET types which are referenced by gRPC code generated by `IndependentReserve.Grpc.Tools` package. This package might also need to be referenced by legacy .NET Framework projects which use gRPC code generated by `IndependentReserve.Grpc.Tools`. Newer .NET projects usually do not need to reference this package explicitly. |
|
|
Toggly.FeatureManagement
Toggly.FeatureManagement extends Microsoft.FeatureManagement with extensions to handle feature state changes, Decorate and register services that are injected when a feature is on, feature usage tracking, and integration with toggly.io |
|
|
M5x.Grpc
Package Description |
GitHub repositories (13)
Showing the top 13 popular GitHub repositories that depend on Grpc.Net.Client.Web:
| Repository | Stars |
|---|---|
|
dotnet/AspNetCore.Docs
Documentation for ASP.NET Core
|
|
|
dodyg/practical-aspnetcore
Practical samples of ASP.NET Core 10, 9, 8.0, 7.0, 6.0, 5.0, 3.1, 2.2, and 2.1,projects you can use. Readme contains explanations on all projects.
|
|
|
abpframework/abp-samples
Sample solutions built with the ABP Framework
|
|
|
mixcore/mix.core
🚀 A future-proof enterprise web CMS supporting both headless and decoupled approaches. Build any type of app with customizable APIs on ASP.NET Core/.NET Core. Completely open-source and designed for flexibility.
|
|
|
gustavnavar/Grid.Blazor
Grid component with CRUD for Blazor (client-side and server-side) and ASP.NET Core MVC
|
|
|
microsoft/RockPaperScissorsLizardSpock
Rock, Paper, Scissors, Lizard, Spock - Sample Application
|
|
|
havit/Havit.Blazor
Free Bootstrap 5 components for ASP.NET Blazor + optional enterprise-level stack for Blazor development (gRPC code-first, layered architecture, localization, auth, ...)
|
|
|
SteveSandersonMS/BlazeOrbital
Sample application for Blazor WebAssembly on .NET 6
|
|
|
chunliu/AzureDesignStudio
A web app that helps you create the architecture design diagram for your Azure solutions and automatically generate IaC code from it.
|
|
|
sitkoru/Sitko.Core
Sitko.Core is a set of libraries to help build .NET Core applications fast
|
|
|
anuviswan/LearningPoint
A repository for learning different technologies, frameworks, features......
|
|
|
Redth/Maui.UITesting
Experimenting with UI Testing approaches for .NET / MAUI
|
|
|
max-ieremenko/ServiceModel.Grpc
Code-first for gRPC
|
| Version | Downloads | Last Updated |
|---|---|---|
| 2.76.0 | 119,870 | 12/19/2025 |
| 2.76.0-pre1 | 1,192 | 11/13/2025 |
| 2.71.0 | 1,011,869 | 4/25/2025 |
| 2.71.0-pre1 | 799 | 4/16/2025 |
| 2.70.0 | 516,988 | 3/10/2025 |
| 2.70.0-pre1 | 355 | 2/26/2025 |
| 2.67.0 | 1,168,209 | 11/21/2024 |
| 2.67.0-pre1 | 1,114 | 10/22/2024 |
| 2.66.0 | 624,809 | 9/20/2024 |
| 2.66.0-pre1 | 1,822 | 9/6/2024 |
| 2.65.0 | 376,481 | 7/27/2024 |
| 2.65.0-pre1 | 328 | 7/20/2024 |
| 2.64.0 | 124,225 | 7/19/2024 |
| 2.64.0-pre1 | 261 | 7/15/2024 |
| 2.63.0 | 599,272 | 5/24/2024 |
| 2.63.0-pre1 | 479 | 5/8/2024 |
| 2.62.0 | 592,853 | 3/29/2024 |
| 2.62.0-pre1 | 611 | 3/8/2024 |
| 2.61.0 | 604,934 | 2/22/2024 |
| 2.61.0-pre1 | 678 | 2/8/2024 |