我正在使用将SUDZ翻译成Objective-C的WDSL,其中一个方法返回带参数的XML来调用服务。问题是,由于SudzC的翻译,它没有按预期工作,我正在寻找某种解决方案(我已经写了近2个月的电子邮件而且SudzC没有回答)
我的想法是:如何获得COMPLETE soap答案以便稍后解析?这可能就够了。
因为问题在于它只接受第一个参数。如果我调用方法,这就是处理程序的答案:
然后在答案('值')中没有像'NextParameter'那样的东西。的确,如果我使用'objectAtIndex','allKeys'......它会让我有例外。
这是方法:
WSDL正在运行,我尝试使用Java中的原始文件,这里是答案的一小部分:
答案 0 :(得分:1)
我使用了Sudzc + XMLDictionary(https://github.com/nicklockwood/XMLDictionary)类来将SOAP xml转换为字典。
创建一个新请求并像这样设置委托:
[[super soapService] products:self
parameter1:@"1"];
#pragma mark - SoapDelegate
- (void)onload:(id)value {
NSDictionary *soapDictionary = [NSDictionary dictionaryWithXMLString:value];
NSDictionary *bodyDictionary = [soapDictionary objectForKey:@"soapenv:Body"];
// here you can parse the SOAP response
NSDictionary *productsDictionary = [[bodyDictionary objectForKey:@"ns1:prductsresponse"] objectForKey:@"products"];
}