標籤:
近期,需要將一個PHP的項目的某個模組用python實現並獨立出來。
在PHP代碼裡,發現使用了Soap協議,之前還真沒接觸過,查了一下, 是個比較老的協議了,實現資料通訊。(現在基本都是http協議的API了)
貼一個SOAP的介紹:http://www.ibm.com/developerworks/cn/xml/x-sisoap/
百度搜了一下, python下有個SAPPpy實現了SOAP協議,可以實現服務端和用戶端。(可能有其它更好的,我是嘗試了一下,感覺夠用就先用這個吧)
1. 網站
https://pypi.python.org/pypi/SOAPpy/
2. 下載
https://pypi.python.org/packages/source/S/SOAPpy/SOAPpy-0.12.22.zip
3. 安裝
我用的環境是centos6.2
安裝也是很簡單
unzip SOAPpy-0.12.22.zippython setup.py buildpython setup.py install安裝完成後,可以進入python命令列,>>> import SOAPpy若不警示,則安裝完成
4. 簡單測試
我參考官網的例子在終端環境跑了一下,很順利,成功了。
伺服器端:
Finished processing dependencies for SOAPpy==0.12.22[[email protected] SOAPpy-0.12.22]# pythonPython 2.6.6 (r266:84292, Jan 22 2014, 09:42:36) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import SOAPpy>>> def hello():... return "hello world."... >>> server = SOAPpy.SOAPServer(("0.0.0.0", 9096))>>> server.registerFunction(hello)>>> server.serve_forever()
用戶端:
[[email protected] ~]# pythonPython 2.6.6 (r266:84292, Jan 22 2014, 09:42:36) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import SOAPpy>>> server = SOAPpy.SOAPProxy("http://localhost:9096/")>>> print server.hello()hello world.
SOAPpy簡單試用