2016-08-02 32 views
1

我需要將現有的WebService重寫爲Django應用程序的一部分,目標是將Django應用程序集成到可以調用此特定WebService的遺留系統。從現有的WSDL構建Django WebService

所以我確實有一個非常複雜的WSDL文件,有幾種方法和一個巨大的數據結構。有什麼方法可以爲使用該WSDL文件的Django中的應用程序生成存根,還是我必須自己創建所有必需的數據結構和方法簽名?

回答

0

退房Zeep

ZEEP檢查WSDL文件,並生成相應的代碼使用的服務和類型在文檔中。

views.py

from django.http import HttpResponse 
from django.views import View 
from zeep import Client 

class MyConvertKilometer2MilesView(View): 
    def get(self, request): 
     # <view logic> 
     client = Client('http://www.webservicex.net/ConvertSpeed.asmx?WSDL') 
     result = client.service.ConvertSpeed(
      100, 'kilometersPerhour', 'milesPerhour') 
     return HttpResponse('result') 

如果你不知道你如何快速獲得回報(由於SOAP的性質),使用

使用Zeep命令行測試

如果您想要測試一些介於兩者之間的東西,那麼您可以使用Zeep的命令行界面來實現這一點。

python -mzeep http://www.soapclient.com/xml/soapresponder.wsdl