我目前遇到了 Sudzc 生成的代码的问题。(对于基于 ARC 的 iOS)
使用生成的代码调用肥皂网络服务工作正常,当我需要检索响应时出现问题。
我目前处理这样的呼叫响应:
-(void)userLoginCompleted:(id)value
{
if([value isKindOfClass:[NSError class]])
{
NSLog(@"%@",value);
}
if([value isKindOfClass:[SoapFault class]])
{
NSLog(@"%@",value);
}
if([value isKindOfClass:[IWWSLoginResult class]])
{
IWWSLoginResult *loginData = (IWWSLoginResult*)value;
NSLog(@"LoginData Result: %i",loginData.Result);
NSLog(@"LoginData AccessToken: %@",loginData.AccessToken)
//Other login related stuff here
}
}
每当使用 NSError 或 SoapFault 调用此代码时,代码运行良好(也就是说,它将解析日志中的错误)。
但是,当使用 IWWSLoginResult 作为参数调用它时,Result
和AccessToken
属性分别是NO
和(null)
,即使 Sudzc 代码的日志显示如下ResponseEnvelope
:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<UserLoginResponse xmlns="[Omitted]">
<UserLoginResult>
<Result>true</Result>
<AccessToken>[Omitted]</AccessToken>
</UserLoginResult>
</UserLoginResponse>
</soap:Body>
</soap:Envelope>
AccessToken and xmlns-url ommitted, but present
这是生成的 SudzC 代码中的错误,还是我的错误?