通过HTTP Post发送XML到IP:端口

时间:2009-07-08 16:02:24

标签: c# xml http post

好的,首先,我没有使用任何类型的网络服务。现在我不太了解接收XML的应用程序,除了收到它之外。我知道那里有很大的帮助。我没有编写接收应用程序,但我的公司没有任何有用的方法来测试XML传输阶段。

我基本上想要发送像这样的XML文档......

<H2HXmlRequest class="myClass">
<Call>
    <CallerID></CallerID>
    <Duration>0</Duration>
</Call>
<Terminal>
    <CancelDate></CancelDate>
    <ClerkLoginTime></ClerkLoginTime>
</Terminal>
<Transaction>
    <AcceptedCurrency></AcceptedCurrency>
    <AccountId>6208700003</AccountId>
</Transaction>
</H2HXmlRequest>

...对于我真的不太了解的应用程序。这没什么特别的,在适当的帮助下我可能会找到更多的信息。但我要做的是想出一些可以接受上述请求的C#Forms应用程序,使用IP和端口发送它,并希望看到发生的事情。

2 个答案:

答案 0 :(得分:10)

制作简单Web请求的推荐方法是使用WebClient对象。

以下是代码段:

// assume your XML string is returned from GetXmlString()
string xml = GetXmlString();


// assume port 8080
string url = new UriBuilder("http","www.example.com",8080).ToString();     


// create a client object
using(System.Net.WebClient client = new System.Net.WebClient()) {
    // performs an HTTP POST
    client.UploadString(url, xml);  

}

答案 1 :(得分:0)

如果您有IP和端口,为什么不尝试使用XML over TCP / IP。在C#中,您可以使用System.Net.Sockets类TCPClient来完成此操作。该类具有连接,发送和接收方法,以便与IP和端口连接然后发送消息并等待接收消息。