AppSequence 验证规则

WS-Discovery公告和响应消息中包含的 AppSequence 信息 (HelloProbeMatchesResolveMatches) 。 在将这些消息传递到堆栈 (上的组件(例如网络资源管理器或调用 WSDAPI) 的应用程序)之前,WSDAPI 会处理和验证此信息。

以下 XML 显示了一个示例 AppSequence 元素。 wsd 前缀引用命名空间 https://schemas.xmlsoap.org/ws/2005/04/discovery

<wsd:AppSequence InstanceId="2"
    SequenceId="urn:uuid:369a7d7b-5f87-48a4-aa9a-189edf2a8772"
    MessageNumber="21">
</wsd:AppSequence>

WSDAPI 忽略过时的消息。 对于每个设备 (SOAP 正文) 中的终结点地址唯一标识,WSDAPI 会忽略 AppSequence MessageNumber 低于上次看到的消息的任何消息。

WSDAPI 忽略过时的 XAddr 公告。 如果 AppSequence InstanceId 低于最后一次看到的 InstanceId,则 WSDAPI 将忽略 SOAP 正文中播发的 XAddrs。 此外,如果 InstanceId 与上一个相同,但 MetadataVersion 低于最后一个 MetadataVersion,则 WSDAPI 将忽略 XAddrs。

WSDAPI 忽略重复WS-Discovery消息。 如果将两个相同的WS-Discovery消息发送到 WSDAPI,则只会处理第一个接收的消息。 这通常仅适用于直接调用 IWSDiscoveryPublisherIWSDiscoveryProvider 接口的应用程序。

发现和元数据交换消息模式