不完整的SOAP响应

时间:2013-08-30 16:35:04

标签: iphone ios soap sudzc

我正在使用将SUDZ翻译成Objective-C的WDSL,其中一个方法返回带参数的XML来调用服务。问题是,由于SudzC的翻译,它没有按预期工作,我正在寻找某种解决方案(我已经写了近2个月的电子邮件而且SudzC没有回答)

我的想法是:如何获得COMPLETE soap答案以便稍后解析?这可能就够了。

因为问题在于它只接受第一个参数。如果我调用方法,这就是处理程序的答案:

handler

然后在答案('值')中没有像'NextParameter'那样的东西。的确,如果我使用'objectAtIndex','allKeys'......它会让我有例外。

enter image description here

这是方法:

Method

WSDL正在运行,我尝试使用Java中的原始文件,这里是答案的一小部分:

http://i.imgur.com/dCcOrYg.png

1 个答案:

答案 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"];

}