获取在IP上发布的Soap消息

本文关键字:Soap 消息 IP 获取 | 更新日期: 2023-09-27 18:03:22

如何获取IP地址为12.23.421.12:37 . 59的soap消息

是否有任何方法可以读取这个IP上的soap消息并从XML解析数据?

这是来自WIRESHARK工具的日志,我需要解析这个

<SOAP-ENV:Envelope 
   xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:SOAP-ENC="http://schemas.xmlso ap.org/soap/encoding/" 
   xmlns:xsi ="http://www.w3.org/2001/XMLSche ma-instance" 
   xmlns:xsd="http://w ww.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
    <huawei:setSubscriberDetails xmlns:huawei="http://business.add.gsm.rcom.com">
        <paramSubscriberDetails>
            <IMEI>355030005026 8312</IMEI>
            <IMSI >405828210239016</IMSI>
            <prepaid>true</prepaid>
            <MSISDN>919646845889</MSISDN>
        </paramSubscriberDetails>
    </huawei:setSubscriberDetails>
</SOAP-ENV:Body>

获取在IP上发布的Soap消息

尝试向项目添加服务引用。这将创建一个类和一些方法,您可以使用它们来调用soap服务。

如果您只收到Soap消息,则使用load方法将其加载到XDocument中。因为它是XML你可以通过

获取信息
var xDoc = XDocument.Load("http://yourserver.com/yourservice/1");
var body = xDoc.Element("SOAP-ENV:Body");
var huaweiSubscriberDetails = new HuaweiSubscriberDetails(){
     Imei = body.Element("IMEI").Value,
     Imsi = body.Element("IMSI").Value,
     etc...
}

我只是在没有Visual Studio的情况下凭脑子做的,所以如果它包含错误,请不要把我束缚在它上面。

我认为你需要在你的IP上安装TCP侦听器:端口

TcpListener MSDN

通常SOAP响应返回到调用者地址(SOAP请求)。如果SOAP请求来自您,则不需要TcpListener。这是我的猜测:)