1、我在使用suds库去掉用web service接口时候的语法问题?
2、下图是接口文档
3、这是我调用时所写的代码
4、当我运行的时候抱错误:
File "import.py", line 8, in <module>
res = client.service['ISysSynchroGetOrgWebServicePort'].getUpdatedElements(t).message
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/client.py", line 521, in __call__
return client.invoke(args, kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/client.py", line 576, in invoke
soapenv = binding.get_message(self.method, args, kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/bindings/binding.py", line 109, in get_message
content = self.bodycontent(method, args, kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/bindings/document.py", line 95, in bodycontent
add_param, self.options().extraArgumentErrors)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/argparser.py", line 83, in parse_args
return arg_parser(args, kwargs, extra_parameter_errors)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/argparser.py", line 108, in __call__
self.__process_parameters()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/argparser.py", line 299, in __process_parameters
self.__process_parameter(*pdef)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/argparser.py", line 294, in __process_parameter
self.__in_choice_context(), value)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/bindings/document.py", line 86, in add_param
p = self.mkparam(method, pdef, value)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/bindings/document.py", line 130, in mkparam
return Binding.mkparam(self, method, pdef, object)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/bindings/binding.py", line 225, in mkparam
return marshaller.process(content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/core.py", line 59, in process
self.append(document, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/core.py", line 72, in append
self.appender.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 88, in append
appender.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 229, in append
Appender.append(self, child, cont)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 168, in append
self.marshaller.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/core.py", line 72, in append
self.appender.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 88, in append
appender.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 284, in append
Appender.append(self, parent, cont)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 168, in append
self.marshaller.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/core.py", line 72, in append
self.appender.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 88, in append
appender.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 229, in append
Appender.append(self, child, cont)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/appender.py", line 168, in append
self.marshaller.append(parent, content)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/core.py", line 71, in append
if self.start(content):
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/suds/mx/literal.py", line 86, in start
raise TypeNotFound(content.tag)
suds.TypeNotFound: Type not found: 'type'
5、我初步理解是因为字典内有嵌套字典,不知道理解的对不对,如果把"returnOrgType": [{"type": "person", "type": "dept"}]
这段去掉程序是可以运行的,然而接口文档也说明是必须要用这样的格式来获取相关的字段,请问这个问题该如何解决呢 ?
不写了是 json 么。