調(diào)用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 工具使用直接上圖

6599ADC9-8441-40EF-90D0-37198B99212F.png
點擊 Parse WSDL 解析之后生成如下

A9E2020F-96C7-43B3-82BA-738131E848FF.png
注意生成的代碼環(huán)境是MRC,如果是ARC環(huán)境 Build Phases->Complie Sources 在對應(yīng)的.m 添加-fno-objc-arc字段;
生成的OC類的使用
//綁定請求接口地址 MyService webService的名稱
MyServiceHttpBinding *binding = [[MyServiceHttpBinding alloc]initWithAddress:@"xxxx.168.1.1:8080/MyService"];//接口地址
binding.logXMLInOut = YES;//可以直接copy
//MyService_userRegist (舉例)這是注冊接口 根據(jù)后臺接口名稱生成的對應(yīng)的類
MyService_userRegist *parameters = [[MyService_userRegist alloc]init];//接口中方法初始化
parameters.in0 = @"參數(shù)";//我們是字典轉(zhuǎn)換成JSON字符串
MyServiceHttpBindingResponse *resp = [binding userRegistUsingParameters:parameters];//調(diào)用方法
if (resp.error) {
if (resp.error.code == -1009) {
// [self mBprogressHUD:@"網(wǎng)絡(luò)不給力,請檢查網(wǎng)絡(luò)設(shè)置"];
}
}
for (id min in resp.bodyParts) {
if ([min isKindOfClass:[MyService_userRegistResponse class]]) {
MyService_userRegistResponse *response =(MyService_userRegistResponse*)min;
response.out_//服務(wù)器返回的數(shù)據(jù)
}
}