我刚刚开始在 iOS iPhone 应用程序上使用 sudzc 进行一些测试,以访问肥皂服务。我使用带有正确 wsdl 链接的 sudzc 并下载了自定义代码。
然后我初始化服务:
// Create the service
service = [EMLMagentoService service];
并打开一个会话:
// Returns NSString*
/* Login user and retrive session id */
SoapRequest *result=[service login:self action:@selector(loginHandler:) username: @"user.test" apiKey: @"GJGDWYgfgjgYGuueyfgue"];
返回我的会话 ID 字符串...而不是我使用该 ID 进行下一次调用
// Handle the response from login.
- (void) loginHandler: (id) value {
NSLog(@"##### loginHandler ######");
// Handle errors
if([value isKindOfClass:[NSError class]]) {
NSLog(@"%@", value);
return;
}
// Handle faults
if([value isKindOfClass:[SoapFault class]]) {
NSLog(@"%@", value);
return;
}
NSString *sessionID = (NSString *)value;
[service call:self action:@selector(callHandler:) sessionId:sessionID resourcePath:@"catalog_category.level" args:nil];
}
// Handle the response from call.
- (void) callHandler: (id) value {
NSLog(@"##### callHandler ######");
// Handle errors
if([value isKindOfClass:[NSError class]]) {
NSLog(@"%@", value);
return;
}
// Handle faults
if([value isKindOfClass:[SoapFault class]]) {
NSLog(@"%@", value);
return;
}
NSLog(@"Kind of class: %@",[value class]);
NSLog(@"result:%@", value);
}
我得到的是一个没有任何格式的字符串……没有 xml……没有数组对象……
##### loginHandler ######
##### callHandler ######
Kind of class: __NSCFString
result:category_id2parent_id1nameDefault Categoryis_active1position1level1
如何获取 xml 或反序列化对象?