ios SoapService请求
来源:互联网 发布:p城堡垒优化助手 编辑:程序博客网 时间:2024/04/30 07:46
步骤
1:利用SoapUI或者火狐自带插件看服务器端给出的xml 格式
2:根据xml格式拼写soapString
3: soapBody 格式说明
<web:方法名 xmls= “命名空间”>
<参数名>参数值</参数名>
</web: 方法名>
4:请求soap
例子
NSString *soapBody = [NSString stringWithFormat:
@"<web:addInformation xmlns=\"命名空间\">"
"<sign>参数值</sign>"
"<secretKey>参数值</secretKey>"
"<jsonString>%@</jsonString>"
"</web:addInformation>",参数值];//参数
[self SOAPData:@"服务器端地址" soapBody:soapBody success:^(id responseObject) {
success(responseObject);
} failure:^(NSError *error) {
failure(error.debugDescription);
}];
+ (void)SOAPData:(NSString *)url soapBody:(NSString *)soapBody success:(void (^)(id responseObject))success failure:(void(^)(NSError *error))failure {
NSString *soapStr = [NSString stringWithFormat:
@"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
"<soap:Envelope xmlns:web=\"命名空间" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\n"
"<soap:Body>\n"
"%@\n"
"</soap:Body>\n"
"</soap:Envelope>",
soapBody];
NSURL *urlString = [NSURL URLWithString:url];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:urlString];
NSString *msgLength = [NSString stringWithFormat:@"%lu", (unsigned long)[soapStr length]];
[request addValue:@"命名空间/方法名" forHTTPHeaderField:@"SOAPAction"];
[request addValue: @"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request addValue: msgLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody: [soapStr dataUsingEncoding:NSUTF8StringEncoding]];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
operation.responseSerializer = [AFXMLParserResponseSerializer serializer];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
success(responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
failure(error);
}];
[operation start];
}
格式基本是一样,主要soapBody内细微的地方不好调通!要有一个强大的后端把格式直接给你 ,那就完美了!!
- ios SoapService请求
- IOS-post请求、get请求
- iOS post请求 (普通请求)
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- IOS之同步请求、异步请求、GET请求、POST请求
- 获取UIWebview的高度4种方法
- MFC中字符串转换和延时函数
- QT基础Day01
- 快捷方便的调试微信公众号内的H5网页
- 写个简单的黄油刀
- ios SoapService请求
- ehCache浅谈
- 假装全新的开始
- js查找大小值
- request的常用方法
- 安卓自定义View进阶-Canvas之绘制图形
- 仿新版QQ锁屏下弹窗
- Linux schedule introduction
- vncserver -kill后面冒号左右空格的影响