Spyne返回肥皂

2024-06-07 13:24:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用spyne与python和django

我正试图找到这样的回复:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Header />
    <SOAP-ENV:Body>
        <ns5:xxx
xmlns:ns3="http://entsal.bean.domain.common.proveedorcentro.meyss.spee.es" xmlns:ns4="http://salida.bean.domain.common.proveedorcentro.meyss.spee.es" xmlns:ns5="http://impl.ws.application.proveedorcentro.meyss.spee.es">
            <ns4:a>
                <d>0</d>
                <ns3:f>
                    <e>
                        <r>20</r>
                        <y>8000000855</y>
                    </e>
                </ns3:f>
            </ns4:a>
        </ns5:xxx>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

但是我得到了:

<soap11env:Envelope xmlns:soap11env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tns="http://impl.ws.application.proveedorcentro.meyss.spee.es" xmlns:s0="backend.soap_sepe.spyne" xmlns:s3="http://entsal.bean.domain.common.proveedorcentro.meyss.spee.es">
    <soap11env:Body>
        <tns:xxx>
            <s3:a>
                <s3:f>
                    <s0:r>0</s0:r>
                    <s0:y>0</s0:y>
                </s3:f>
            </s3:a>
        </tns:xxx>
    </soap11env:Body>
</soap11env:Envelope>

我正在使用soap11,我不知道是否可以将soap11env更改为SOAP-ENV,并去掉childelements上的前缀?

class f(ComplexModel):
    __type_name__ = 'f'
    __mixin__ = True

    r = Integer
    y = Integer


class a(ComplexModel):
    __type_name__ = 'a'
    __namespace__ = "http://entsal.bean.domain.common.proveedorcentro.meyss.spee.es"

    f = f


class xxx(a):
    __type_name__ = 'xxx'
    __mixin__ = True

    a = a

application = Application([IProveedorCentroTFWS],
                          tns='http://impl.ws.application.proveedorcentro.meyss.spee.es',
                          in_protocol=Soap11(),
                          out_protocol=Soap11(
    validator='lxml', cleanup_namespaces=True),
)


@ rpc(ComplexModel.MyRequest, _returns=ComplexModel.xxx, _body_style='bare')
    def actionname(ctx, req):

我试了所有的方法,我不知道怎样才能得到最好的回答,有人能帮我吗

提前谢谢


Tags: envhttps3esbodysoapxxxenvelope

热门问题