下面是客户给我的接口文档说明
================
1、查询请求
<?xml version='1.0' encoding='UTF-8'?>
<ufinterface account='fwoa' billtype='listSubCompany'>
<listSubCompany>
<security>
<name>fwoapt</name>
<psw> zflPoJQ4axA=</psw>
</security>
<condition>
</condition>
</listSubCompany>
</ufinterface>
2、查询返回
无记录返回:
<?xml version='1.0' encoding='UTF-8'?>
<ufinterface account='fwoa' billtype='listSubCompany'>
<result>
<succeed>0</succeed>
<body>
</body>
<errinfo>查询无记录</errinfo>
</result>
</ufinterface>
============================
看上面 ,第1点是请求客户提供给我的接口,第二是客户那边的服务器返回的结果。
单通过上面的信息大家知道怎么实现这个接口吗。是如何把这个xml提交到请求到服务器的,比如post xml数据的代码
------解决思路----------------------
可以,如果参数少,可以值传递参数在网址上
------解决思路----------------------
var postData == "<xml></xml>";
var request = (HttpWebRequest)WebRequest.Create(url);
if(!string.IsNullOrEmpty(postData))
{
request.Method = "POST";
byte[] data = Encoding.UTF8.GetBytes(postData);
request.ContentLength = data.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(data, 0, data.Length);
requestStream.Close();
}
var m_returnXML = "";
using(var response = (HttpWebResponse)request.GetResponse())
{
using(Stream s = response.GetResponseStream())
{
byte[] bytes = ReadAll(s);
m_returnXML = Encoding.UTF8.GetString(bytes);
}
}
------解决思路----------------------
用POST方式把XML POST过去
------解决思路----------------------
HTTP协议就只有POST/GET/PUT/DELETE这些基本的操作啊,或者你可以找客户要WSDL文件,然后在工程里面做Web Referece,但这个也只是把POST封装了一下而已啊