Wednesday, September 24, 2014

Invoke SOAP web-service

NSString *xml = requestXMLToSent;

NSString *msgLength = [NSString stringWithFormat:@"%lu"
                      (unsigned long)[xml length]];

NSURL *serviceURL = [NSURL URLWithString: url];
NSMutableURLRequest *urlRequest = [NSMutableURLRequest  
                                  requestWithURL:serviceURL];

[urlRequest addValue:@"text/xml; charset=utf-8" 
            forHTTPHeaderField:@"Content-Type"];
[urlRequest addValue: serviceURL forHTTPHeaderField:@"SOAPAction"];
[urlRequest addValue:msgLength forHTTPHeaderField:@"Content-Length"];
[urlRequest setHTTPBody:[xml dataUsingEncoding: NSUTF8StringEncoding]];

[urlRequest setHTTPMethod:@"POST"];

[NSURLConnection sendAsynchronousRequest:urlRequest queue:[[NSOperationQueue alloc]init] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
        
  if (connectionError == NULL) {
        
    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)response;
    NSInteger statuscode = httpResponse.statusCode;
    
       if (statuscode == 200) {
            
         NSString *responseString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
            NSLog(@"response String  : %@",responseString);
                        
        }else{
            NSLog(@"%@",response);            
        }
                                
    }else{
        
        NSLog(@"There is an error in URL connection and the Error is: %@",connectionError);

    }

No comments:

Post a Comment