為了解決在系統的80端口提供RPC的服務,而又不影響正在執行的WEB服務,人們想出了用HTTP協定傳輸RPC包的辦法。對于幾乎是專門用于傳輸文本的HTTP協定,要在其上傳輸RPC封包,最友善的方法莫過于把RPC封包編碼成文本形式——例如XML檔案。
XML- RPC(http://www.xml-rpc.com)是由美國UserLand公司指定的一個RPC協定。它将RPC資訊封包編碼為XML,然後通過 HTTP傳輸封包;
簡單的了解:
将資料定義為xml格式,通過http協定進行遠端傳輸。
1. 傳輸複雜的資料。
2. 通過程式語言的封裝,實作遠端對象的調用。
服務端:

import SimpleXMLRPCServer
class MyObject:
def sayHello(self):
return "hello xmlprc"
obj = MyObject()
server = SimpleXMLRPCServer.SimpleXMLRPCServer(("localhost", 80))
server.register_instance(obj)
print "Listening on port 80"
server.serve_forever()

用戶端:

import xmlrpclib
server = xmlrpclib.ServerProxy("http://localhost:80")
words = server.sayHello()
print "result:" + words

本文轉自CoderZh部落格園部落格,原文連結:http://www.cnblogs.com/coderzh/archive/2008/12/03/1346994.html,如需轉載請自行聯系原作者