2011-10-27 8 views
0

私はsudsを使ってPythonでWebサービス用のクライアントを構築しようとしています。このサイトでチュートリアル を使用しました:http://www.jansipke.nl/python-soap-client-with-suds。私自身の書かれたWebサービスとWSDLで動作しますが、wsdlファイルでは動作しません。 wsdlファイルはsoapUIで動作しています。要求を送信して回答を得ることができます。だから問題は、私は、泡がどのようにwsdlファイルを解析しているかと思います。私は次のエラーが表示されます:SUDS python connection

urllib2.URLError: <urlopen error [Errno -2] Name or service not known> 

どのように修正するには?さらに詳しい情報が必要な場合はお尋ねください。ありがとうございました!

答えて

2

あなたが私たちに与えたエラーは、あなたがWSDLにアクセスするために使用しているURLが正しくないことを暗示しているようです。もう少しあなたのコードを見せてくれますか?たとえば、クライアントインストレーションとWSDLへのURLなどです。これにより他の人が実際にあなたを助けることができるかもしれません。

オリー

0
# SUDS is primarily built for Python 2.6/7 (Lightweight SOAP client) 
# SUDS does not work properly with other version, absolutely no support for 3.x 
# Test your code with Python 2.7.12 (I am using) 

from suds.client import Client 
from suds.sax.text import Raw 

# Use your tested URL same format with '?wsdl', Check once in SOAP-UI, below is dummy 
# Make sure to use same Method name in below function 'client.service.MethodName' 
url = 'http://localhost:8080/your/path/MethodName?wsdl' 

#Use your Request XML, below is dummy, format xml=Raw('xml_text') 
xml = Raw('<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:diag=" </soapenv:Body></soapenv:Envelope>') 

def GetResCode(url, xml): 
    client = Client(url) 
    xml_response = (client.service.MethodName(__inject={'msg':xml})) 
    return xml_response 

print(GetResCode(url,xml)) 
関連する問題