rinse.wsa¶
WSA (Addressing) support for rinse SOAP client.
-
rinse.wsa.
append_wsa_headers
(msg, to, action, message_id=None, relates_to=None, relationship_type=None, reply_to=None, from_endpoint=None, fault_to=None)[source]¶ Add WSA (addressing) headers.
>>> from rinse.wsa import append_wsa_headers >>> import lxml.usedoctest >>> from rinse.message import SoapMessage >>> from rinse.util import printxml >>> msg = SoapMessage() >>> f123 = msg.elementmaker( ... 'f123', ... 'http://www.fabrikam123.example/svc53', ... ) >>> msg.body = f123.Delete(f123.maxCount('42')) >>> append_wsa_headers( ... msg, ... 'mailto:joe@fabrikam123.example', ... 'http://fabrikam123.example/mail/Delete', ... message_id='uuid:aaaabbbb-cccc-dddd-eeee-ffffffffffff', ... reply_to='http://business456.example/client1', ... ) >>> print(msg['SOAPAction']) "http://fabrikam123.example/mail/Delete" >>> printxml(msg.etree()) <soapenv:Envelope xmlns:f123="http://www.fabrikam123.example/svc53" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"> <soapenv:Header> <wsa:MessageID>uuid:aaaabbbb-cccc-dddd-eeee-ffffffffffff</wsa:MessageID> <wsa:To>mailto:joe@fabrikam123.example</wsa:To> <wsa:Action>http://fabrikam123.example/mail/Delete</wsa:Action> <wsa:ReplyTo> <wsa:Address>http://business456.example/client1</wsa:Address> </wsa:ReplyTo> </soapenv:Header> <soapenv:Body> <f123:Delete> <f123:maxCount>42</f123:maxCount> </f123:Delete> </soapenv:Body> </soapenv:Envelope>