最近可能开始要搞关于远程接口调用的玩意儿,所以上网查了一些关于远程调用额东西,其中有很多写得很不错,我把其中的比较好的几个整理一下,整理到一块儿,变成个人的理解写出来。
关于所谓的webService和RPC的概念理解。
链接:http://www.cnblogs.com/xdp-gacl/p/4048937.html。作者:园子里的:孤傲苍狼。
那我自己的理解就是,webservice就是将你的系统中的一部分服务暴露出来,让别人能够调用,就这么简单。就好像在写java代码的时候,你很有可能会封装一些公用的静态方法,供别人在其他的类中调用这些方法,那webservice种所用的SOAP协议就是将静态方法提高到了,不同的系统中的不同的“服务”,这里的服务类似的就如:天气获取服务,手机号归属地查询等等,这些在某个系统中封装好的可以从系统外部访问的一些接口。只不过这个service可能跟对内的不太一样。
在调用其他系统的service时,我们就不能像调用系统内部的接口那么简单了,因为是在互联网中传播数据的,所以我们就要使用一套新的传输协议,就是HTTP+XML,高大上的名字叫做SOAP,SOA加个P,我们在调用外部接口时,数据传输就可能涉及到不同操作系统、语言、运行环境等等。所以我们就需要用到一套完全与操作系统、编程语言无关的数据载体来进行数据沟通,所以当时发明webservice的这套东西的人(大神)就想到 了XML,所以,在调用webservice中时,这个接口的入参和出参都需要用到XML来标记了。
WSDL
还有一个东西叫做WSDL,这个东西的话一般在webservice的地址后面加个?wsdl就能获取到。这个东西就类似与一个设计文档,在这个文档中会标明这个service的入参和出参是什么。
举几个例子:http://webservice.36wu.com/weatherService.asmx http://webservice.36wu.com/weatherService.asmx?wsdl
附赠一个网址,里面会有一些service,看一下你就明白了。http://www.cnblogs.com/LIANQQ/archive/2013/05/10/3070943.html