### Mermaid 序列图示例:在线支付流程 ```mermaid sequenceDiagram participant Customer participant WebApp participant PaymentGateway participant Bank Customer->>WebApp: 提交订单 WebApp->>PaymentGateway: 发起支付请求(¥100) PaymentGateway->>Bank: 验证支付 alt 余额充足 Bank-->>PaymentGateway: 扣款成功 PaymentGateway-->>WebApp: 支付成功 WebApp-->>Customer: 订单确认 else 余额不足 Bank-->>PaymentGateway: 扣款失败 PaymentGateway-->>WebApp: 支付失败 WebApp-->>Customer: 请更换支付方式 end ``` ### 示例说明 这个序列图描述了**在线支付**的完整流程,涉及 4 个参与者: - **Customer**(顾客):提交订单并完成支付 - **WebApp**(网站应用):处理订单和支付请求 - **PaymentGateway**(支付网关):作为中间件处理交易 - **Bank**(银行):实际执行扣款操作 #### 关键交互解析: 1. **订单提交** - 顾客提交订单后,网站向支付网关发起请求 2. **银行验证** - 支付网关与银行通信验证账户余额 3. **分支逻辑** - 成功:依次返回成功状态并确认订单 - 失败:提示顾客更换支付方式 --- ### 进阶技巧 1. **超时处理**(添加`+`/`-`符号表示超时): ```mermaid sequenceDiagram Client->>+Server: 请求数据 Server--)-Client: 超时未响应 ``` 2. **并行操作**(使用`par`块): ```mermaid sequenceDiagram par 并行任务 A->>B: 任务1 A->>C: 任务2 end ``` > **适用场景**:此图适合描述金融交易、电商系统等需要严格状态管理的流程,清晰展示成功/失败的两种路径。 如果需要更复杂的示例(如包含数据库回滚或消息队列),可以进一步扩展!
评论区: