跨平台桌面应用程序构建 (Electron-Vue + C# gRPC)

1. 创建 C# gRPC 服务

  创建可由 JavaScript 调用的 C# gRPC 服务

2. 创建可在 Window 和 Linux 上运行的跨平台桌面应用程序

  Electron-Vue 创建跨平台桌面应用程序 UI

3. 为 C# gRPC 服务接口生成 JavaScript 调用代码

  通过 protoc and protoc-gen-grpc-web 插件根据 gRPC 定义,自动生成对应的客户端调用 JavaScript 代码。参考如下:

  使用 gRPC-Web 编写 JavaScript 客户端代码

  通过 protoc-gen-grpc-web 插件自动生成 gPRC 服务接口的 JavaScript 调用代码

4. 在 Electron-Vue 程序中调用 C# gPRC 服务

<script>
  import {HelloRequest, RepeatHelloRequest, HelloReply} from './greet_pb';
  import {GreeterClient} from './greet_grpc_web_pb';

  var client = new GreeterClient('http://172.22.113.93:5000', null, null);
  // simple unary call
  var request = new HelloRequest();
  request.setName('666');

  export default {
    name: 'landing-page',
    components: { },
    methods: {
      open (link) {
        this.$electron.shell.openExternal(link)
      },
      clickButton:function(){
                client.sayHello(request, {}, (err, response) => {
                  if (err) {
                    alert(`Unexpected error for sayHello: code = ${err.code}` +
                                `, message = "${err.message}"`);
                  } else {
                    alert(response.getMessage());
                  }
                });
            }
    },
  }
</script>
View Code

   

原文地址:https://www.cnblogs.com/dhqy/p/14107480.html