XML-RPC体验详解

今天上园子发现园子已经支持Office2007的WebBlog功能,于是看了一下使用的是XML-RPC技术。打开dudu XML-RPCPRC的API感觉就像是WebService,但是深入看看原来不是,这是才注意到原来XML-PRC在起作用。XML-RPC是什么东东(不要笑我孤陋寡闻),幸好有google才知道XML-RPC原来是这个样子:

What’s XML-RPC?It's a spec and a set of implementations that allow software running on disparate operating systems, running in different environments to make procedure calls over the Internet.It's remote procedure calling using HTTP as the transport and XML as the encoding. XML-RPC is designed to be as simple as possible, while allowing complex data structures to be transmitted, processed and returned.

登录后复制

简单的说就是使用了HTTP作为传输协议、XML作为数据内容实现了远程方法调用的一个标准(和WebService非常象)。具体可以参见XML-PRC的标准 http://www.xmlrpc.com/ 在这里我就不多说了。

既然是标准那就一定会有人实现了,到 http://sourceforge.net/ 找了一下果然如此,但是遗憾的是没有.Net的实现,还是看看dudu的实现吧。在dudu的API中发现了这个CookComputing.XmlRpc   .NET CLR 1.1.4322,哈哈应该是他了。Google我太爱你了,是你帮助了我找到了 http://www.cookcomputing.com/blog/index.html ,呵呵原来是cookcomuting在.Net下实现了XML-PRC。,让我来体验一下XML-PRC。

下载源代码后,运行里面的Math这个Sample,Very Cool使用这个Liberry非常简单,感觉比Remoting还要简单,遗憾的是现在的版本由于.Net Framework的原因现在只支持Framework 1.1不支持Framework 2.0,在说明中会在以后版本支持 Framework 2.0。

哈哈,大家赶快去体验吧。

体验之后发现XML-PRC.Net的客户端实现的代理模式挺有意思,决定研究一下。打开源代码发现使用的是动态创建Assembly的技术,也就是该技术导致了不支持Framework2.0的原故。

XML-RPC体验详解

 
   从上面的图(画的不好请见谅)看出客户端通过XmlRpcProxyGen的Create方法创建了一个实现YourInterface的类,同时继承与XmlRpcClientProtocol,在这里使用了AssemblyBuilder具体可以查看MSDN。然后把YourInterface的方法全部由XmlRpcClientProtocol的一个Invoke的方法代理,该函数的签名如下:

public object Invoke(string MethodName,params object[]Parameters)

登录后复制

哈哈,这回终于找到关键所在了,在Invoke方法里面就可以按照XML-RPC的标准通过WebRequest对象调用远程的方法了。

以上就是XML-RPC体验详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2419258.html

(0)
上一篇 2025年3月3日 02:40:44
下一篇 2025年2月23日 14:16:43

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • python基于xmlrpc实现二进制文件传输的方法

    本文实例讲述了python基于xmlrpc实现二进制文件传输的方法。分享给大家供大家参考。具体实现方法如下: 服务器端: from SimpleXMLRPCServer import SimpleXMLRPCServerimport xml…

    编程技术 2025年2月28日
    200
  • python使用xmlrpc实例讲解

    RPC是Remote Procedure Call的缩写,翻译成中文就是远程方法调用,是一种在本地的机器上调用远端机器上的一个过程(方法)的技术,这个过程也被大家称为“分布式计算”,是为了提高各个分立机器的“互操作性”而发明出来的技术。 X…

    编程技术 2025年2月27日
    200
  • php xmlrpc 扩展怎么安装

    php xmlrpc扩展的安装方法:1、在Windows下,找到并去掉“extension=php_xmlrpc.dll”前面的分号;2、在Linux下加入“–with-xmlrpc”选项。 本文操作环境:windows7系统、…

    2025年2月24日
    200
  • xmlrpc.php如何删除

    删除“xmlrpc.php”的方法:首先在“functions.php”的文件头部加入代码“add_filter(‘xmlrpc_enabled’,’__return_false’);”;然后…

    2025年2月18日
    200
  • xmlrpc.php为什么要删除

    删除xmlrpc.php可以防止攻击者远程注入恶意xml,其删除方法就是找到并打开WordPress根目录,然后直接删除xmlrpc.php文件即可。 推荐:《PHP视频教程》 WordPress存在DoS拒绝服务漏洞,推荐删除根目录下的x…

    2025年2月18日
    200

发表回复

登录后才能评论