• WebApi集成Grpc客户端


    1.依赖包

    • Grpc.Net.Client
    • Google.Protobuf
    • Grpc.Tools

    2.把相应的protos文件copy到项目文件目录下,重新编译项目,IDE会自动给你在项目文件中添加你的proto文件引用,如果没有可以自己手动添加。

        <ItemGroup>
            <Protobuf Include="Protos*.proto" GrpcServices="Client" Link="Protos\%(RecursiveDir)%(Filename)%(Extension)" />
            <Protobuf Update="ProtosTest.proto">
                <Link>ProtosTest.proto</Link>
            </Protobuf>
        </ItemGroup>
    

    4.通过ioc的模式来调用grpc服务,配置Startup.ConfigureServices

                AppContext.SetSwitch("System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport", true);
                services.AddGrpcClient<Test.TestClient>(options => {
                    options.Address = new Uri("http://localhost:5000");
                });
    

    5.直接注入客户端后调用。

        public class DemoService : IDemo
        {
            private readonly Test.TestClient _TestClient;
            public DemoService(Test.TestClient TestClient)
            {
                _TestClient = TestClient
            }
    
            public void Test()
            {
                //调用
                TestClient.PrintAsync(new str 
                {
                    str = "hello"
                });
            }
        }
    
  • 相关阅读:
    Redux 学习总结
    ECMAScript 6 学习总结
    Bootstrap 前端UI框架
    React.js 学习总结
    html 之 <meta> 标签之http-equiv
    Leetcode Excel Sheet Column Number (C++) && Excel Sheet Column Title ( Python)
    490
    414
    494
    458
  • 原文地址:https://www.cnblogs.com/linhuiy/p/13940466.html
Copyright © 2020-2023  润新知