Я callign в WebService из моего кода Python:Разбираем выход subprocess.call() из Python
response = subprocess.call(['curl', '-k', '-i', '-H' , 'content-type: application/soap+xml' ,'-d', etree.tostring(tree), '-v' ,'https://world-service-dev.intra.aexp.com:4414/worldservice/CLIC/CaseManagementService/V1'])
Служба возвращает сообщение мыло, как я анализирую сообщение мыло и узнать, если это был неудачей или успехом?
Я пытался использовать следующее, но я получаю неправильные результаты:
subprocess.check_output("curl -k --data "+etree.tostring(tree)+"@SampleRequest.xml -v https://world-service-dev.intra.aexp.com:4414/worldservice/CLIC/CaseManagementService/V1",stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
Повторите попытку 'check_output', но убедитесь, что первым аргументом является список, как это было для' call'. Предоставление только строки может привести к необычным результатам. – Kevin
Просто используйте http://pycurl.sourceforge.net –
, вам не нужно «завивать», чтобы сделать HTTP-запрос на Python, например, «out = urllib2.urlopen (url, data, headers = {'content-type': . '...'}) следующим образом() '. Есть [мыльные клиенты в Python] (http://stackoverflow.com/q/206154/4279), такие как 'suds', но я бы попробовал вместо этого отправлять/получать только xml (чтобы обойти различные несовместимости между мыльными стеками) - вы можете использовать 'xml.etree.cElementTree' для его анализа. – jfs