You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PlantUML nwdiag图中为连线添加标签及解决语法错误

解决方案:nwdiag连线标签与端口标注实现

1. 修复基础语法错误

你遇到的语法错误是节点名称拼写错误:定义的节点是web01,但连线代码里误写为web011,修正节点名后基础连线标签即可生效:

@startuml
nwdiag {
  network test {
    alice [shape = actor];
    web01 [shape = server];
    alice -- web01 : myTest;
  }
}
@enduml

2. 实现连线首尾的端口/协议标注

nwdiag支持在连线首尾添加端口、协议类标注,通过[属性]语法放在节点与连线之间,同时保留连线中间的标签。以下是完整示例:

@startuml
nwdiag {
  network test {
    alice [shape = actor];
    web01 [shape = server];
    
    # 格式:节点[端口/标签] -- [协议/中间标注] 节点[端口/标签] : 连线整体标签
    alice[label="客户端", port=10001] -- [label="TCP", proto="HTTP/1.1"] web01[label="Web服务器", port=80] : 线路编号:L001;
  }
}
@enduml

各部分说明:

  • alice[label="客户端", port=10001]:为节点添加显示标签,同时标注端口号
  • [label="TCP", proto="HTTP/1.1"]:在连线中间位置标注协议层级信息
  • : 线路编号:L001;:为整条连线添加底部标签,用于标注线路ID等全局信息

3. 简化写法(按需选择)

如果不需要复杂属性,可使用更简洁的文本标注方式:

@startuml
nwdiag {
  network test {
    alice [shape = actor];
    web01 [shape = server];
    
    # 节点后用()标注端口,连线中间用[]标注协议
    alice(10001) -- [HTTP] web01(80) : L001;
  }
}
@enduml

内容的提问来源于stack exchange,提问作者draikes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 23:38:19