进程间通信
进程间通信 (IPC) 允许隔离的进程安全地进行通信,是构建更复杂应用的关键。
通过以下指南了解关于特定 IPC 模式的更多信息
Tauri 使用一种称为异步消息传递的特殊进程间通信方式,进程通过简单的序列化数据表示来交换请求和响应。对于有 Web 开发经验的人来说,消息传递的概念应该很熟悉,因为这种范式正是互联网上客户端与服务器通信所使用的。
相比于共享内存或直接函数访问,消息传递是一种更安全的技术,因为接收方可以自由地根据需要拒绝或丢弃请求。例如,如果 Tauri 核心进程判定某条请求是恶意的,它只需丢弃该请求且永远不会执行对应的函数。
下面,我们将详细介绍 Tauri 的两种 IPC 原语——事件 (Events) 和 命令 (Commands)。
事件是“即发即弃”的单向 IPC 消息,最适合用于传达生命周期事件和状态变更。与命令不同,事件既可以由前端触发,也可以由 Tauri 核心触发。
Tauri 还提供了一种基于 IPC 消息的类似于外部函数接口 (FFI) 的抽象1。其核心 API invoke 类似于浏览器的 fetch API,允许前端调用 Rust 函数、传递参数并接收数据。
由于该机制底层使用类似 JSON-RPC 的协议来序列化请求和响应,因此所有参数和返回数据必须能够序列化为 JSON。
-
由于命令底层仍然使用消息传递,因此它们不会像真正的 FFI 接口那样存在安全隐患。↩
© 2026 Tauri 贡献者。CC-BY / MIT