今年一月份的时候,微软曾宣布对 gRPC-Web for .NET 的实验性支持,现在它已正式发布。
gRPC 是谷歌开源的高性能、通用 RPC 框架,支持包括 .NET 在内的多种编程语言。它面向移动和基于 HTTP/2 标准设计,但当前,浏览器中无法实现 gRPC HTTP/2 规范,因为没有浏览器 API 能够对请求进行足够的细粒度控制。gRPC-Web 是解决此问题并使 gRPC 在浏览器中可用的标准化协议。
gRPC-Web 即 gRPC for Web Clients。它是一个 JavaScript 库,使 Web 应用程序能够直接与后端 gRPC 服务通信,不需要 HTTP 服务器充当中介。它旨在使 gRPC 在更多情况下可用,包括但不限于:
从浏览器调用 ASP.NET Core gRPC 应用程序
JavaScript SPAs
.NET Blazor Web Assembly apps
在 IIS 和 Azure App Service 中托管 ASP.NET Core gRPC 应用程序
从非 .NET Core 平台调用 gRPC —— 在所有 .NET 平台上,HttpClient 均不支持 HTTP/2,而 gRPC-Web 可用于从 Blazor 和 Xamarin 调用 gRPC 服务
微软表示正在与 Blazor 团队合作,使 gRPC-Web 在 Blazor WebAssembly 应用程序中使用时为端到端开发人员提供更好的体验。
根据微软的说法,gRPC 与 JSON 相比具有明显的性能优势。以 Blazor 的默认模板为例,相比 JSON,使用 gRPC 时,在提取数据页面上传输的数据减半,数据大小也从 627 字节减少到 309 字节。
目前,.NET 版 gRPC-Web 现已在 NuGet 上发布:
Grpc.AspNetCore.Web —— 将 gRPC-Web 支持添加到 ASP.NET Core gRPC 服务
Grpc.Net.Client.Web —— 从 .NET 调用 gRPC-Web 端点
有关 gRPC-Web 的更多信息,可查看文档,或尝试使用 gRPC-Web 的示例应用程序。
相关文章
Win11专业版 64位中文版 V2022 微软最新系统
2022-06-17Win11正式版下载_微软官方Msdn原版 V2022
2022-06-16Msdn Win11正式版 64位下载_微软简体中文版
2022-06-16微软推出新的 Windows 11 验证操作系统
2022-06-16Win11系统下载_微软原版 Win11正式版操作系统
2022-06-14微软向 Win11 任务栏添加类似 Win10 的搜索栏
2022-06-14微软尝试在 Win11 23H2 任务栏上使用搜索小部件
2022-06-14微软正在 Win11 任务栏上测试新的搜索小部件
2022-06-11微软:避免在不受支持的 PC 上意外发布 Win11 22H2
2022-06-11微软 Win11 Build 25136 中的新增功能
2022-06-11