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。

相关内容

热门资讯

透视辅助!aa poker软件... 透视辅助!aa poker软件透明挂,aapoker猫腻竟然存在有挂(详细有挂教程)1、许多玩家不知...
黑科技透明挂!wEpOke都是... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加微【757446909】很多玩家在这款游戏中打牌都...
透视辅助!红龙扑克确实是真的有... 透视辅助!红龙扑克确实是真的有挂,红龙扑克都是有挂(详细辅助工具教程)1、这是跨平台的黑科技,在线的...
透视辅助!德州aapoker下... 透视辅助!德州aapoker下载,aapoker ai好像是真的有挂(详细透明挂教程)是一款可以让一...
必备教程!德扑ai辅助插件,德... 必备教程!德扑ai辅助插件,德扑ai机器人好像真的有挂(详细外卦挂教程)是一种具有地方特色的麻将游戏...
透视辅助!德州aapoker俱... 透视辅助!德州aapoker俱乐部本来有挂,aapoker app都是真的有挂(详细发牌机制教程);...
发现一款!!德扑真的是有挂确实... 发现一款!!德扑真的是有挂确实,德扑之星底牌本来真的是有挂(详细功能教程)是一款可以让一直输的玩家,...
教程攻略!红龙扑克ai,红龙扑... 教程攻略!红龙扑克ai,红龙扑克一贯真的是有挂(详细辅助工具教程)是一款可以让一直输的玩家,快速成为...
七分钟了解!微扑克透视辅助神器... 七分钟了解!微扑克透视辅助神器,微扑克神器一直真的是有挂(详细辅助挂教程)1、进入到黑科技之后,能看...
透视辅助!微扑克本来存在有挂,... 透视辅助!微扑克本来存在有挂,微扑克安卓版本好像是真的有挂(详细德州专用辅助器教程)1、上手简单,内...