Grpc.Net.Client.Web
2.67.0
Prefix Reserved
dotnet add package Grpc.Net.Client.Web --version 2.67.0
NuGet\Install-Package Grpc.Net.Client.Web -Version 2.67.0
<PackageReference Include="Grpc.Net.Client.Web" Version="2.67.0" />
paket add Grpc.Net.Client.Web --version 2.67.0
#r "nuget: Grpc.Net.Client.Web, 2.67.0"
// Install Grpc.Net.Client.Web as a Cake Addin #addin nuget:?package=Grpc.Net.Client.Web&version=2.67.0 // Install Grpc.Net.Client.Web as a Cake Tool #tool nuget:?package=Grpc.Net.Client.Web&version=2.67.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
HttpMessageHandler
that makes the gRPC HTTP request, for example,HttpClientHandler
. - GrpcWebMode: An enumeration type that specifies whether the gRPC HTTP request
Content-Type
isapplication/grpc-web
orapplication/grpc-web-text
.GrpcWebMode.GrpcWeb
configures content to be sent without encoding. Default value.GrpcWebMode.GrpcWebText
configures content to be base64 encoded. Required for server streaming calls in browsers.
- HttpVersion: HTTP protocol
Version
used to setHttpRequestMessage.Version
on 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. |
.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 (41)
Showing the top 5 NuGet packages that depend on Grpc.Net.Client.Web:
Package | Downloads |
---|---|
ArmoniK.Api.Client
Package Description |
|
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 |
|
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. |
|
M5x.Grpc
Package Description |
|
GamesCheetah.RealtimeEmbeddedServer
Package Description |
GitHub repositories (14)
Showing the top 5 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 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.
|
|
FastEndpoints/FastEndpoints
A light-weight REST API development framework for ASP.NET 6 and newer.
|
|
grpc/grpc-dotnet
gRPC for .NET
|
|
abpframework/abp-samples
Sample solutions built with the ABP Framework
|
Version | Downloads | Last updated |
---|---|---|
2.67.0 | 1,194 | 11/21/2024 |
2.67.0-pre1 | 272 | 10/22/2024 |
2.66.0 | 112,433 | 9/20/2024 |
2.66.0-pre1 | 479 | 9/6/2024 |
2.65.0 | 152,122 | 7/27/2024 |
2.65.0-pre1 | 198 | 7/20/2024 |
2.64.0 | 16,532 | 7/19/2024 |
2.64.0-pre1 | 135 | 7/15/2024 |
2.63.0 | 229,280 | 5/24/2024 |
2.63.0-pre1 | 325 | 5/8/2024 |
2.62.0 | 260,982 | 3/29/2024 |
2.62.0-pre1 | 388 | 3/8/2024 |
2.61.0 | 371,997 | 2/22/2024 |
2.61.0-pre1 | 565 | 2/8/2024 |
2.60.0 | 350,224 | 1/3/2024 |
2.60.0-pre1 | 2,079 | 12/14/2023 |
2.59.0 | 205,653 | 11/8/2023 |
2.59.0-pre1 | 291 | 10/27/2023 |
2.58.0 | 82,087 | 10/19/2023 |
2.58.0-pre1 | 332 | 10/9/2023 |
2.57.0 | 217,356 | 9/6/2023 |
2.57.0-pre1 | 232 | 8/31/2023 |
2.56.0 | 58,329 | 8/25/2023 |
2.56.0-pre2 | 234 | 8/16/2023 |
2.56.0-pre1 | 1,548 | 8/3/2023 |
2.55.0 | 278,186 | 7/4/2023 |
2.55.0-pre1 | 211 | 6/23/2023 |
2.54.0 | 109,092 | 6/15/2023 |
2.54.0-pre1 | 375 | 5/25/2023 |
2.53.0 | 187,986 | 5/5/2023 |
2.53.0-pre1 | 338 | 4/12/2023 |
2.52.0 | 408,301 | 3/15/2023 |
2.52.0-pre1 | 297 | 3/3/2023 |
2.51.0 | 461,174 | 1/2/2023 |
2.51.0-pre1 | 498 | 12/7/2022 |
2.50.0 | 246,642 | 11/17/2022 |
2.50.0-pre1 | 541 | 11/3/2022 |
2.49.0 | 389,575 | 9/26/2022 |
2.49.0-pre1 | 1,151 | 9/1/2022 |
2.48.0 | 230,927 | 8/24/2022 |
2.48.0-pre1 | 422 | 8/17/2022 |
2.47.0 | 251,333 | 7/3/2022 |
2.47.0-pre1 | 799 | 6/23/2022 |
2.46.0 | 184,041 | 5/13/2022 |
2.46.0-pre1 | 1,061 | 4/28/2022 |
2.45.0 | 164,410 | 4/19/2022 |
2.45.0-pre1 | 435 | 4/7/2022 |
2.44.0 | 90,261 | 3/17/2022 |
2.44.0-pre1 | 1,193 | 3/9/2022 |
2.43.0 | 169,606 | 2/25/2022 |
2.43.0-pre1 | 5,372 | 1/28/2022 |
2.42.0 | 138,345 | 1/19/2022 |
2.42.0-pre1 | 3,798 | 12/30/2021 |
2.41.0 | 176,576 | 12/7/2021 |
2.41.0-pre1 | 24,465 | 11/12/2021 |
2.40.0 | 973,937 | 10/5/2021 |
2.40.0-pre1 | 644 | 9/9/2021 |
2.39.0 | 211,299 | 8/18/2021 |
2.39.0-pre1 | 77,284 | 8/6/2021 |
2.38.0 | 226,105 | 6/11/2021 |
2.38.0-pre1 | 556 | 6/4/2021 |
2.37.0 | 104,232 | 4/20/2021 |
2.37.0-pre1 | 409 | 4/14/2021 |
2.36.0 | 42,178 | 3/17/2021 |
2.36.0-pre1 | 716 | 3/9/2021 |
2.35.0 | 50,779 | 2/4/2021 |
2.35.0-pre1 | 348 | 1/26/2021 |
2.34.0 | 87,447 | 12/11/2020 |
2.34.0-pre1 | 473 | 12/1/2020 |
2.33.1 | 48,034 | 10/28/2020 |
2.33.1-pre1 | 472 | 10/22/2020 |
2.32.0 | 8,727 | 10/5/2020 |
2.32.0-pre1 | 1,077 | 9/8/2020 |
2.31.0 | 20,451 | 8/14/2020 |
2.31.0-pre2 | 444 | 8/3/2020 |
2.30.0 | 17,011 | 7/16/2020 |
2.30.0-pre1 | 1,096 | 6/17/2020 |
2.29.0 | 24,259 | 5/27/2020 |
2.29.0-pre1 | 900 | 5/15/2020 |
2.28.0-pre2 | 7,208 | 3/11/2020 |
2.28.0-pre1 | 9,385 | 3/3/2020 |
2.27.0-pre1 | 6,519 | 1/24/2020 |