221.3.3. 节点 ID
要定义命名空间和节点 ID 的目标命名空间和节点 ID。在以前的版本中,可以通过指定 nodeId
和 namespaceUri
或 namespaceIndex
来实现。但是,这只允许使用基于字符串的节点 ID。虽然此配置仍可行,但首选较新的配置。
新方法就是以 ns=1 格式指定完整的命名空间+节点 ID;i=1
还允许使用其他节点 ID 格式(如数字、GUID/UUID 或 opaque)。如果使用了 node
参数,则不能使用旧的参数。此节点格式的语法是一组 键=值对
,用分号(;
)分隔。
必须使用一个命名空间和一个节点 id 键。有关可能的密钥,请查看下表:
键 | 类型 | 描述 |
---|---|---|
ns | namespace | 数字命名空间索引 |
nsu | namespace | Namespace URI |
s | node | 字符串节点 ID |
i | node | 数字节点 ID |
g | node | GUID/UUID 节点 ID |
b | node | 用于不透明节点 ID 的 Base64 编码字符串 |
由于语法生成的值无法透明地编码为 URI 参数值,因此需要转义它们。但是,Camel 允许嵌套 RAW (…)
中的实际值,这样可以不需要进行转义。例如:
milo-client:tcp://user:password@localhost:12345?node=RAW(nsu=http://foo.bar;s=foo/bar)