您的位置:首页 > 其它

soap请求数据

2015-12-02 21:22 246 查看
1.soap请求数据

 //创建SOAP信息
    NSString *soapMsg= [NSString
stringWithFormat:
                        @"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
                        "<soap12:Envelope "
                        "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" "
                        "xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" "
                        "xmlns:soap12=\"http://www.w3.org/2003/05/soap-envelope\">"
                        "<soap12:Body>"
                        "<getMobileCodeInfo xmlns=\"http://WebXml.com.cn/\">"
                        "<mobileCode>%@</mobileCode>"
                        "<userID>%@</userID>"
                        "</getMobileCodeInfo>"
                        "</soap12:Body>"
                        "</soap12:Envelope>", number,
@""];
    NSLog(@"SOAPMsg==%@",soapMsg);
    //创建URL请求
    NSMutableURLRequest *request=[NSMutableURLRequest
requestWithURL:[NSURL
URLWithString:
@"http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx"
]];
    NSString *msgLength=[NSString
stringWithFormat:@"%lu",(unsigned
long)[number length]];
    // 添加请求的详细信息,与请求报文前半部分的各字段对应
    [request addValue:@"application/soap+xml; charset=utf-8"
forHTTPHeaderField:@"Content-Type"];
    [request addValue:msgLength
forHTTPHeaderField:@"Content-Length"];
    [request setHTTPMethod:@"POST"];
    [request setHTTPBody:[soapMsg
dataUsingEncoding:4]];
    NSURLConnection *connection=[[NSURLConnection
alloc] initWithRequest:request
delegate:self];
    if (connection) {
        soapData=[[NSMutableData
alloc] init];
    }
}

#pragma mark- 
#pragma mark -NSURLConnectionDelegate

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse
*)response{
    [soapData
setLength:0];
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{
    [soapData
appendData:data];
    NSString *theXML = [[NSString
alloc] initWithBytes:[soapData
mutableBytes]length:[soapData
length]encoding:4];
    // 打印出得到的XML
    NSLog(@"得到的XML=%@", theXML);
    [[SoapNAL
shareInstance] parserSoapXML:soapData
withParserBlock:^(NSString *parserXML) {
        NSLog(@"parserXML==%@",parserXML);
    }];
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: