调用WebService 接口使用的是 WSDL2Objc 工具
下载地址:http://download.csdn.net/download/dhq199023/7553679
例如后台的接口地址 xxxx.168.1.1:8080/MyService?wsdl
用Firefox浏览器 在地址栏中输入 xxxx.168.1.1:8080/MyService?wsdl打开之后,将页面另存为 .wsdl 文件;
WSDL2Objc 工具使用直接上图
点击 Parse WSDL 解析之后生成如下
注意生成的代码环境是MRC,如果是ARC环境 Build Phases->Complie Sources 在对应的.m 添加-fno-objc-arc字段;
生成的OC类的使用
//绑定请求接口地址 MyService webService的名称
MyServiceHttpBinding *binding = [[MyServiceHttpBinding alloc]initWithAddress:@"xxxx.168.1.1:8080/MyService"];//接口地址
binding.logXMLInOut = YES;//可以直接copy
//MyService_userRegist (举例)这是注册接口 根据后台接口名称生成的对应的类
MyService_userRegist *parameters = [[MyService_userRegist alloc]init];//接口中方法初始化
parameters.in0 = @"参数";//我们是字典转换成JSON字符串
MyServiceHttpBindingResponse *resp = [binding userRegistUsingParameters:parameters];//调用方法
if (resp.error) {
if (resp.error.code == -1009) {
// [self mBprogressHUD:@"网络不给力,请检查网络设置"];
}
}
for (id min in resp.bodyParts) {
if ([min isKindOfClass:[MyService_userRegistResponse class]]) {
MyService_userRegistResponse *response =(MyService_userRegistResponse*)min;
response.out_//服务器返回的数据
}
}