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。

相关内容

热门资讯

透明科技!wpk安卓版本外挂辅... 透明科技!wpk安卓版本外挂辅助脚本,wpk职业代打,详细教程(有挂秘笈)-哔哩哔哩1、让任何用户在...
终于懂了!gg扑克有辅助吗!果... 终于懂了!gg扑克有辅助吗!果真真的有挂((2021已更新))(哔哩哔哩);精心打造了俱乐部社区互动...
两分钟了解!红龙扑克发牌有问题... 1、两分钟了解!红龙扑克发牌有问题(透视)透视辅助((2023已更新))(哔哩哔哩);详细教程。2、...
一分钟教会你!Wepoke软件... 一分钟教会你!Wepoke软件外挂辅助机制,wepower提高中牌率,详细教程(有挂方法)-哔哩哔哩...
总算了解!云扑克德州辅助器!的... 总算了解!云扑克德州辅助器!的确是真的有挂((2020已更新))(哔哩哔哩);小薇(透视辅助)致您一...
3分钟普及!wpeoke软件下... 3分钟普及!wpeoke软件下载(透视)辅助透视((2020已更新))(哔哩哔哩),您好,这款游戏可...
透明软件!德扑之星实战外挂透视... 透明软件!德扑之星实战外挂透视辅助工具,wpk的下风机制,详细教程(有挂详细)-哔哩哔哩是一款可以让...
如何分辨真伪!wepoke有辅... 如何分辨真伪!wepoke有辅助吗!原来是真的有挂((2020已更新))(哔哩哔哩)1、不需要AI权...
1分钟普及!微扑克线上代打工具... 您好,微扑克线上这款游戏可以开挂的,确实是有挂的,需要了解加微【841106723】很多玩家在这款游...
推荐攻略!德扑手牌胜率计算工具... 推荐攻略!德扑手牌胜率计算工具!的确是真的有挂((2024已更新))(哔哩哔哩);揭秘教程安装方法样...