XML-RPC

晚上花了一段时间学习了一下XML-RPC,简单的说,就是在Internet上实现远程的方法调用的一种规范和实现。其实这种规范可真是不能算少,DCOM、CORBA、SOAP、RMI,那么XML-RPC有啥优势呢?

"Does distributed computing have to be any harder than this? I don’t think so." — Byte.

一图剩千言,这张图很好的说明了XML-RPC的工作原理。

总结一下,XML-RPC是用XML来做Web服务的鼻祖,是一套实现跨Internet过程调用的规范和实现。它利用HTTP作为传输协议,使用XML作为消息请求的传输主体。XML-RPC以一个消息体为XML格式的HTTP POST请求发送给服务器,服务器执行后将执行结果再以XML格式返回。比起DCOM、CORBA、SOAP,它的优点主要是:

1)简单、轻量级;

2)XML编码,可读性增强,同时也便于手工修改;

3)利用HTTP传输,方便的穿透防火墙(80端口),便于使用SSL加密等。

缺点:

1)对字符编码的支持不够,通常用Base64编码来解决中文问题;

2)Datetime数据类型没有时区;

这里有一个最简单的例子,如果想看真实的例子就看看Bloger中的例子(比如发布文章的API规范)。

最后附上XML-RPC的规范

对了,XML-RPC的作者是Dave Winer,他也是RSS0.92RSS2.0(关于RSS的各种版本的历时可以看这篇文章)、OPML的作者。

参考资料:

XML-RPC vs. SOAPkate rhodes

XML-How to – Eric Kidd

Popularity: 25% [?]

你可能感兴趣的:(xml)