【问题标题】:How to Post XML Document Element via HTTP in Android?如何在 Android 中通过 HTTP 发布 XML 文档元素?
【发布时间】:2012-02-15 11:34:39
【问题描述】:

这是用 C# 编写的用于发布 XML 文档元素的代码

XmlString = @"<WOITEMS><WOITEM ACTION='I'>" + TransData + "</WOITEM></WOITEMS>";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(XmlString);
saveRegisterItems(xmlDoc.DocumentElement);

saveRegisterItems 是一个 WCF 服务方法,它接收一个文档元素作为它的参数。如何在 Android 中使用 HttpPOST 做到这一点?我尝试了下面的代码。但是,它不起作用。

HttpResponse response = null;
String myUrl = "http://"+Constants.strURL+"/ServiceOrders.svc/SaveRegisterItems";
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(myUrl);
StringEntity se = new StringEntity(XmlString, HTTP.UTF_8);
se.setContentType("text/xml");
httpPost.setHeader("Content-Type", "application/soap+xml;charset=UTF-8");
httpPost.setEntity(se);

我得到 response.getStatusLine() 为“HTTP/1.1 200 OK”,但是它没有在服务器中更新。我认为,传递一个 XML 文档元素就可以了。请帮忙

【问题讨论】:

    标签: android xml http-post


    【解决方案1】:

    当我更改 httpPost.setHeader() 方法的第二个参数时,我得到了解决方案。应该是这样的。

    httpPost.setHeader("Content-Type", "application/xml;charset=UTF-8"); 
    

    我通过提供 EntityUtils.toString(entity) 得到了适当的响应。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多