目标:
一、了解 web services 的功能及适用情景。
二、通过完成“Hello world!”实例,了解 web services 的实现、调用的步骤。
三、给出需要深入的知识点列表。
学习:
一、了解 web services 的功能及适用情景。
1、优点
1)易于实现、软件重用
2)能穿透防火墙
3)适合web交互以及远程调用。
2、缺点
1)xml传输的开销较大。
二、通过完成“Hello world!”实例,了解 web services 的实现过程及步骤。
1、web services 服务的实现与部署。
1)实现
namespace WebService1
{
[WebService(Namespace = "http://tempuri.org/")] //WebService所属命名空间,用于互联网服务中区分其它同名服务。
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] //强制符合WS-I规范
[ToolboxItem(false)] //暂时还没搞明白
public class Service1 : System.Web.Services.WebService //继承WebService
{
[WebMethod] //声明为web Service服务,可由互联网中其它程序调用
public string HelloWorld() //类与方法都需要设为公共类型
{
return "{Hello:'World',Num:2}";
}
}
}
2)部署类似网站
2、C/S客户端调用web services的方法步骤
//需要添加引用,动态加载的方法暂未深入
public string Hello()
{
WebService1.Service1 ws = new WebService1.Service1();
return ws.HelloWorld();
}
3、B/S中网页调用web services的方法步骤
1)、使用GET、POST调用web services
可使用与C/S客户端调用的方式相同。
2)、使用AJAX的方式调用web services
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$.ajax({
type:"post",
url:"http://localhost:2930/Service1.asmx/HelloWorld",
dataType:"xml",
success:function(res){
var json=eval('('+res.text+')');
alert(json.Hello);
}
});
});
三、给出需要深入的知识点列表。
web services 原理、SOAP传输
WSDL、UDDI的用法
WS-I规范
动态加载的方法
返回多个值的方法:JSON、序列化
相关:
其它分布式程序的可选方案:DCOM、.net remoting