<marquee width=358>欢迎来到月影社区,希望这里可以成为您美丽的梦幻花园,如果你觉得这里好请分享给您的朋友!- wf66.com</marquee> 将月影社区设置为您的首页将月影社区地址加入到您的收藏栏
月影社区时尚音乐音乐查询IP手机许愿之瓶最新更新文件加密访客留言爱音乐
欢迎您,首页 >> 信息中心 >> 使用XML-RPC来访问Web服务

请输入您关键字:


使用XML-RPC来访问Web服务

推荐查看本文HTML版本

<!--[if !supportLists]-->1.   <!--[endif]-->XML-RPC
<!--[if !supportLists]-->a)        <!--[endif]-->原理:XML-RPC是以XML的方式来发送RPC调用,他使用HTTP作为传输协议,把需要发送的请求和请求的结果封装到HTTP的消息当中。
由于RPC调用也是方法调用,只是被调用的一方不是在本地而已,虽然是这样,但是不能改变的是调用的本质,对于调用方,他需要提供所调用的方法和方法的参数,而对于被调用方,她通过解释调用方的请求,执行响应的调用,并将结果返回。这就是方法调用的本质。
RPC只是在调用和返回之间增加了网络传输和编码解码部分,而XML-RPC则是规定了编码和解码必须使用XML格式,而网络传输必须使用HTTP协议,仅此而已。
 
<!--[if !supportLists]-->2.   <!--[endif]-->XML-RPC的请求和响应格式
<!--[if !supportLists]-->a)        <!--[endif]-->请求:
POST /rpchandler HTTP/1.0
User-Agent: AcmeXMLRPC/1.0
Host: xmlrpc.example.com
Content-Type: text/xml
Content-Length: 165
<?xml version="1.0"?>
<methodCall>
     <methodName>getCapitalCity</methodName>
     <params>
         <param>
              <value><string>England</string></value>
         </param>
     </params>
</methodCall>
 
<!--[if !supportLists]-->b)        <!--[endif]-->响应:
HTTP/1.1 200 OK
Date: Sun, 29 Apr 2001 12:08:58 GMT
Server: Apache/1.3.12 (Unix) Debian/GNU PHP/4.0.2
Connection: close
Content-Type: text/xml
Content-length: 133
<?xml version="1.0"?>
<methodResponse>
     <params>
         <param>
              <value><string>Michigan</string></value>
         </param>
     </params>
</methodResponse>
 
<!--[if !supportLists]-->c)        <!--[endif]-->错误:
HTTP/1.1 200 OK
Date: Sun, 29 Apr 2001 12:08:58 GMT
Server: Apache/1.3.12 (Unix) Debian/GNU PHP/4.0.2
Connection: close
Content-Type: text/xml
Content-length: 133
<?xml version="1.0"?>
<methodResponse>
     <fault>
         <value>[月影社区 http://wf66.com/]
              <struct>
                   <member>
                       <name>faultCode</name>
                       <value><int>802</int></value>
                   </member>
                   <member>
                       <name>faultString</name>
                       <value><string>Unknown country, 'Engand'.</string></value>
                   </member>
              </struct>
         </value>
     </fault>
</methodResponse>
 
<!--[if !supportLists]-->3.   <!--[endif]-->XML-RPC实例
<!--[if !supportLists]-->a)        <!--[endif]-->发送请求:
<!--[if !supportLists]-->                      i.              <!--[endif]-->说明:使用XmlRpcClient可以发送请求,在请求当中我们需要提供所需要调用的方法名,以及方法参数,且参数需包装到一个集合当中。
<!--[if !supportLists]-->                   ii.              <!--[endif]-->代码:
XmlRpcClient client = new XmlRpcClient("http://127.0.0.1:6666");
Vector<String> pars = new Vector<String>();
pars.addElement("nick");
Object result = client.execute("service.hello", pars);
System.out.println("The Result is : " + result);
 
<!--[if !supportLists]-->b)        <!--[endif]-->发布服务:
<!--[if !supportLists]-->                      i.              <!--[endif]-->说明:通过WebServer我们可以很方便的发布服务。其中添加到addHandler()当中的实例就是服务体,而“service”就表示服务名称。当请求到达时,他会根据请求的名称与查找服务体,然后在返回的实例上调用execute()方法。
<!--[if !supportLists]-->                   ii.              <!--[endif]-->代码:
WebServer server = new WebServer(6666);
server.addHandler("service", new Service());
server.start();
 
public class Service implements XmlRpcHandler {
     public Object execute(String methodName, Vector args) throws Exception {
         if ("service.hello".equals(methodName)) {
              return hello((String) args.get(0));
         }
         return "";
     }
     private String hello(String name) {
         return "Hello " + name;
     }
}

使用XML-RPC来访问Web服务 2006-9-21
转到本主题第:[ 1 ]
相关评论

暂无评论

总计0页 [ ]上一页 下一页
发表评论(揪错)
呢称: * 您尚未登陆,请登录
来自: *
内容:
 

(为防止非法信息,您的言论提交后需要审核才能正常显示)

文学
精品文萃 情感天地 言情小说
网络小说 玄幻小说 悬疑恐怖
武侠小说 古典品谈 外国名著
儿童文学 会员原创 学习园地
杂谈其它
娱乐
爆笑网文 星座占卜 影音动漫
娱乐新闻 影视剧情
诗词
青竹诗歌 个人诗集 宋词雅赏
全唐诗录
新闻
国际新闻 国内新闻 科技新闻
体育新闻
图片
图文专区 艺术长廊 桌面壁纸
精品素材 像素图片
漫画
单幅漫画 爆笑四格 连环漫画
电脑
电脑入门 图形图像 编程开发
游戏
我爱Q宠 最新攻略 最新秘籍
游戏新闻 技巧心得
经济
帕格节电 财经资讯 股市证券
生活
百科知识 外语学院 潮流时尚
健康医疗 宠物花卉 汽车地带
行走天下
美食
面食甜点 家常菜品 药膳食疗
美食天下 烹饪技巧 松辽风味
燕京风味 巴蜀风味 滇黔风味
赣江风味 徽皖风味 闽台风味
齐鲁风味 中州风味 岭南风味
荆楚风味 三晋风味 淞沪风味
苏扬风味 潇湘风味 钱塘风味
民族风味 素斋仿荤
营销
管理杂谈 谈经论道 培训激励
经营战略 职场生涯 公关交际
关于我们版权声明本站导航友情连结作品演示 TOP↑
本论坛言论纯属发表者个人意见,与£月影社区£立场无关。 皖ICP备16024038号-1
禁止发布任何色情/政治/反动相关信息让我们共同来营造一个属于我们的梦幻家园
Copyright ©2001-2006 MoonShadow. All rights reserved.  Version 4.0  Licence 2006.4.2
建站天数:7189天 本站基于ASP+JS构建,完全自主开发,版权归属月影社区 管理员QQ:23165062 Time:62ms