C#中WebServer接口:
1、通常用.asmx文件编写;
2、客户端访问该接口地址为:http://localhost:55769/WebService1.asmx/HelloWorld样式,其中HelloWorld为该接口中的函数名称。
3、若接口函数形参有两个以上,则客户端Post请求的参数应注意:
a、每个参数以key-value的形式书写
b、参数名称(key)必须和接口函数的形参名称相同;
c、参数(key-value)数量必须和接口形参数相等;
d、参数(key-value)必须以“&”分割;
若出现a、b、c、d中一条以上有误,则出现 远程服务器返回错误: (500) 内部服务器错误 的提示。
注,value可以为空,若不允许为空,则可在接口中判断是否为空,返回一个状态码给客户端,让其提供改参数值。
4、问题:
不知道是什么情况,接口返回的数据是一下内容(简称:xml代码):
<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">{"classinfo":[{"className":"C#","score":"90"},{"className":"JAVA","score":"68"}],"name":"李华","sex":"男","phone":"1888888888"}</string>
实际上接口函数return的是(简称:json代码):
{"classinfo":[{"className":"C#","score":"90"},{"className":"JAVA","score":"68"}],"name":"李华","sex":"男","phone":"1888888888"}
对此,一般的处理方式为:
在客户端使用以下代码转换:
XmlDocument doc = new XmlDocument();
doc.LoadXml(result);
string strJson = doc.InnerText; //返回“json代码 ”
string strJson1 = doc.InnerXml; // 返回“xml代码”
以上内容,如有错误,望各位大神纠正,感激不尽。