python使用xmlrpc實例講解
RPC是Remote Procedure Call的縮寫,翻譯成中文就是遠程方法調(diào)用,是一種在本地的機器上調(diào)用遠端機器上的一個過程(方法)的技術(shù),這個過程也被大家稱為“分布式計算”,是為了提高各個分立機器的“互操作性”而發(fā)明出來的技術(shù)。
XML-RPC的全稱是XML Remote Procedure Call,即XML遠程方法調(diào)用。
它是一套允許運行在不同操作系統(tǒng)、不同環(huán)境的程序?qū)崿F(xiàn)基于Internet過程調(diào)用的規(guī)范和一系列的實現(xiàn)。
這種遠程過程調(diào)用使用http作為傳輸協(xié)議,XML作為傳送信息的編碼格式。
Xml-Rpc的定義盡可能的保持了簡單,但同時能夠傳送、處理、返回復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。
Python下的XML-RPC:
1、類庫:xmlrpclib 一般使用在客戶端,這個模塊用來調(diào)用注冊在XML-RPC服務(wù)器端的函數(shù),xmlrpclib并不是一個類型安全的模塊,無法抵御惡意構(gòu)造的數(shù)據(jù),這方面的一些處理工作需要交給開發(fā)者自己。
2、類庫:SimpleXMLRPCServer 一般是用在服務(wù)器端,這個模塊用來構(gòu)造一個最基本的XML-RPC服務(wù)器框架
3、構(gòu)造一個基本的XML-RPC Server:
from SimpleXMLRPCServer import SimpleXMLRPCServer
def is_even(n):
return n%2 == 0
server = SimpleXMLRPCServer(("localhost", 8000))#確定URL和端口
print "Listening on port 8000..."
server.register_function(is_even, "is_even") #注冊is_even函數(shù)
server.serve_forever()#啟動服務(wù)器,并使其對這個連接可用
4、構(gòu)造一個基本的XML-RPC Client:
import xmlrpclib
proxy = xmlrpclib.ServerProxy("http://localhost:8000/")
print "3 is even: %s" % str(proxy.is_even(3))#客戶端調(diào)用XML-RPC函數(shù)
print "100 is even: %s" % str(proxy.is_even(100))
相關(guān)文章
Django靜態(tài)資源URL STATIC_ROOT的配置方法
這篇文章主要介紹了Django靜態(tài)資源URL STATIC_ROOT的配置方法,本文給出配置方法和兩種使用方法,需要的朋友可以參考下2014-11-11Python多任務(wù)版靜態(tài)Web服務(wù)器實現(xiàn)示例
這篇文章主要為大家介紹了Python靜態(tài)Web服務(wù)器多任務(wù)版實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-06-06Python隨機函數(shù)random()使用方法小結(jié)
random()是Python中生成隨機數(shù)的函數(shù),是由random模塊控制,random()函數(shù)不能直接訪問,需要導入random 模塊,然后再通過相應(yīng)的靜態(tài)對象調(diào)用該方法才能實現(xiàn)相應(yīng)的功能2018-04-04Python3使用xlrd、xlwt處理Excel方法數(shù)據(jù)
這篇文章主要介紹了Python3使用xlrd、xlwt處理Excel方法數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-02-02Python光學仿真數(shù)值分析求解波動方程繪制波包變化圖
這篇文章主要為大家介紹了Python光學仿真通過數(shù)值分析求解波動方程并繪制波包變化圖的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-10-10python 使用Tensorflow訓練BP神經(jīng)網(wǎng)絡(luò)實現(xiàn)鳶尾花分類
這篇文章主要介紹了python 使用Tensorflow訓練BP神經(jīng)網(wǎng)絡(luò)實現(xiàn)鳶尾花分類,幫助大家更好的利用python進行深度學習,感興趣的朋友可以了解下2021-05-05django開發(fā)教程之利用緩存文件進行頁面緩存的方法
緩存相信對各位程序員們來說都不陌生,下面這篇文章主要給大家介紹了關(guān)于django開發(fā)教程之利用緩存文件進行頁面緩存的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友們可以參考借鑒,下面隨著小編來一起學習學習吧。2017-11-11