1. 创建可在 Window 和 Linux 上运行的跨平台桌面应用程序
2. 创建 C# gRPC 服务
教程:在 ASP.NET Core 中创建 gRPC 客户端和服务器
3. 更改 C# gRPC 服务使其支持 JavaScript 调用
gRPC-Web 允许浏览器 JavaScript 应用调用 gRPC 服务。配置方法参考:
4. 为 C# gRPC 服务生成 JavaScript 代码
通过 protoc
and protoc-gen-grpc-web
插件根据 gRPC 定义,自动生成对应的客户端调用 JavaScript 代码。参考如下:
使用 gRPC-Web 编写 JavaScript 客户端代码
5. 在 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>