python - स्पीने-स्पाइएन द्वारा बनाए गए wsdl फ़ाइल के एक तत्व को डुप्लिकेट कैसे करें?
soap spyne (1)
मुझे उत्पन्न wsdl फ़ाइल के तत्वों में से एक को डुप्लिकेट करना होगा। मेरा कोड ऐसा है:
class SDPSimulator(ServiceBase):
@rpc(UserCredential, Unicode, Unicode, Unicode, Integer,
_returns=SendSmsReturn.customize(sub_name='return'))
def sendSms(ctx, userCredential, srcAddress, regionIds,msgBody,maxSendCount):
मैं स्पाइन के साथ इस तरह मेरी अनुरोध wsdl फ़ाइल बनाना चाहता हूं:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:loc="localhost" xmlns:apps="apps.simulator.views">
<soapenv:Header/>
<soapenv:Body>
<loc:sendSms>
<!--Optional:-->
<loc:userCredential>
<!--Optional:-->
<apps:password>test</apps:password>
<!--Optional:-->
<apps:username>test</apps:username>
</loc:userCredential>
<!--Optional:-->
<loc:srcAddress>982156898</loc:srcAddress>
<!--Optional:-->
<loc:regionIds>77</loc:regionIds>
<loc:regionIds>78</loc:regionIds>
<loc:regionIds>79</loc:regionIds>
<!--Optional:-->
<loc:msgBody>Hi there</loc:msgBody>
<!--Optional:-->
<loc:maxSendCount>12</loc:maxSendCount>
</loc:sendSms>
</soapenv:Body>
</soapenv:Envelope>
मैं अपना कोड WSDL फ़ाइल में क्षेत्र आईडी को डुप्लिकेट करने के लिए कैसे लिख सकता हूं और ऊपर की तरह एक अनुरोध भेज सकता हूं?
मुझे आखिरकार मिल गया :) ऐसा करने के लिए मुझे इस तरह से अपना कोड लिखना होगा:
class SDPSimulator(ServiceBase):
@rpc(UserCredential, Unicode, Unicode.customize(max_occurs='unbounded'), Unicode, Integer,
_returns=SendSmsReturn.customize(sub_name='return'))
def sendSms(ctx, userCredential, srcAddress, regionIds, msgBody, maxSendCount):
कोड के इस भाग के साथ: Unicode.customize (max_occurs = 50) मैं निर्दिष्ट कर सकता हूँ कि कितनी बार <regionIds></regionIds>
को दोहराया जा सकता है।