Я запускаю мыльный сервер в django.python django soaplib response with classmodel issue
Возможно ли создать метод мыла, возвращающий экземпляр класса soaplib без < {method name} Response> < {имя метода} Результат> теги?
Например, вот часть моего кода сервера мыло:
# -*- coding: cp1254 -*-
from soaplib.core.service import rpc, DefinitionBase, soap
from soaplib.core.model.primitive import String, Integer, Boolean
from soaplib.core.model.clazz import Array, ClassModel
from soaplib.core import Application
from soaplib.core.server.wsgi import Application as WSGIApplication
from soaplib.core.model.binary import Attachment
class documentResponse(ClassModel):
__namespace__ = ""
msg = String
hash = String
class MyService(DefinitionBase):
__service_interface__ = "MyService"
__port_types__ = ["MyServicePortType"]
@soap(String, Attachment, String ,_returns=documentResponse,_faults=(MyServiceFaultMessage,) , _port_type="MyServicePortType" )
def sendDocument(self, fileName, binaryData, hash):
binaryData.file_name = fileName
binaryData.save_to_file()
resp = documentResponse()
resp.msg = "Saved"
resp.hash = hash
return resp
и это ответы вроде:
<senv:Body>
<tns:sendDocumentResponse>
<tns:sendDocumentResult>
<hash>14a95636ddcf022fa2593c69af1a02f6</hash>
<msg>Saved</msg>
</tns:sendDocumentResult>
</tns:sendDocumentResponse>
</senv:Body>
Но мне нужен ответ, как это:
<senv:Body>
<ns3:documentResponse>
<hash>A694EFB083E81568A66B96FC90EEBACE</hash>
<msg>Saved</msg>
</ns3:documentResponse>
</senv:Body>
Какие конфигурации я должен сделать, чтобы получить второй ответ, упомянутый выше?
Заранее спасибо.
u.unver34 Вы можете поделиться тем, что сработало для вас? – Priyeshj
Конечно, я не использовал ни один из вышеперечисленных методов, я нашел другой способ. Я заменил эти нежелательные теги и все дерево схемы ответов с формой дерева, которая мне нужна в точке возврата для soap-сервера django, согласно некоторым ключевым словам. –