ASP.NET中可以同时使用gRPC和gRPC-Web吗?
创始人
2024-09-19 21:30:48
0

在ASP.NET中可以同时使用gRPC和gRPC-Web。为此,您需要针对两个协议分别配置您的ASP.NET应用程序。下面是一些要点:

1.在 gRPC 服务器端中添加gRPC-Web中间件:

public void ConfigureServices(IServiceCollection services)
{
    services.AddGrpc();
}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    app.UseRouting();

    app.UseGrpcWeb(new GrpcWebOptions { DefaultEnabled = true });

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapGrpcService();

        endpoints.MapGet("/", async context =>
        {
            await context.Response.WriteAsync("Hello World!");
        });
    });
}

2.在gRPC客户端中添加gRPC-Web支持:

var httpClient = new HttpClient(new GrpcWebHandler(GrpcWebMode.GrpcWeb, new HttpClientHandler()));

var channel = GrpcChannel.ForAddress("https://localhost:5001", new GrpcChannelOptions { HttpClient = httpClient });

var client = new MyService.MyServiceClient(channel);

这些示例通过GrpcWebHandler将gRPC-Web协议添加到了.NET Core的HTTP客户端中。

在这里有更多的 gRPC和gRPC-Web 的ASP.NET示例:https://docs.microsoft.com/en-us/aspnet/core/grpc/basics?view=aspnetcore-5.0#grpc-web-%EF%B8%8F

注意:尽管gRPC-Web是一个在浏览器中使用gRPC的好方法,但它并不是完全遵循gRPC标准的。如果您需要完全遵循标准,请考虑使用浏览器原生支持的gRPC。

相关内容

热门资讯

一分钟带你了解!哈糖大菠萝可以... 一分钟带你了解!哈糖大菠萝可以开挂吗(辅助挂)竟然真的有挂(有挂分析辅助插件)1、进入游戏-大厅左侧...
玩家实测!德州辅助工具到底怎么... 玩家实测!德州辅助工具到底怎么样(辅助挂)其实真的有挂(有挂技巧辅助工具)1、实时透视辅助更新:用户...
玩家科普!wepoker买钻石... 玩家科普!wepoker买钻石有用吗(辅助挂)原来真的是有挂(有挂攻略辅助攻略)1、玩家可以在透视最...
一秒答解!哈糖大菠萝有挂吗5个... 一秒答解!哈糖大菠萝有挂吗5个常用方法(辅助挂)本来真的有挂(有挂秘诀辅助技巧)一、可以开透视的定义...
我来教大家!wepoker游戏... 我来教大家!wepoker游戏的安装教程(辅助挂)果然真的是有挂(今日头条辅助app)1、游戏颠覆性...
重大通报!hhpoker辅助软... 重大通报!hhpoker辅助软件下载(辅助挂)果然是有挂(详细教程辅助攻略)1、操作简单,无需手机版...
玩家必看分享!hhpoker有... 玩家必看分享!hhpoker有没有作弊辅助(辅助挂)一贯真的是有挂(有挂方针辅助教程)1. 选牌创建...
一分钟了解!如何下载wepok... 一分钟了解!如何下载wepoker安装包(辅助挂)竟然有挂(详细教程辅助方法)1、该软件可以轻松地帮...
实操分享!hhpkoer辅助挂... 实操分享!hhpkoer辅助挂是真的吗(辅助挂)果然真的有挂(有挂规律辅助脚本)亲,关键说明,透视脚...
玩家交流!aapoker辅助器... 玩家交流!aapoker辅助器怎么用(辅助挂)原来是真的有挂(有挂细节辅助器)1、玩家可以在透视最简...