2013-02-27 10 views
0

iOS 앱에서 웹 서비스에 연결하고 싶습니다. 이전에 내 URL은 http://<domain name>/mobilews/mobilews.asmx입니다. 최근에 내가 http://<domain name>/mobilewstest/mobilews.asmx로 변경했습니다.iOS에서 웹 서비스에 액세스 할 수 없습니다.

정보 plist 파일에 내 URL을 넣었습니다. 그러나 이것을 새로운 URL로 변경 한 후에는 로그인 할 수 없습니다.

NSString *urlString = [NSString stringWithFormat:@"%@%@",serverURL,[queryString stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]]; 

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 
[request setURL:[NSURL URLWithString:urlString]]; 
[request setHTTPMethod:@"GET"]; 


NSHTTPURLResponse *response ; 

NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil]; 

int statusCode = [((NSHTTPURLResponse *)response) statusCode];` 

여기 returnDatanill되고 statusCode 0입니다하지만 브라우저에서 제공 할 때이 urlString 성공적으로 웹 서비스에 기록됩니다.

답변

0
NSURL *url = [NSURL URLWithString:@"YOUR URL HERE"]; 
    NSError *connectionError = nil; 
    NSData *inData = [NSData dataWithContentsOfURL:url options:NSDataReadingUncached error:&connectionError]; 
    NSInteger code = [connectionError code]; 
    if (code != 0) 
    { 
     NSString *locDesc = [NSString stringWithString:[connectionError localizedDescription]]; 
     NSString *locFail = [NSString stringWithString:[connectionError localizedFailureReason]]; 
     NSLog(@"Error: %d %@ %@", code, locDesc, locFail); 
    } 
    else if ([inData length] == 0) 
    { 
     NSLog(@"No data"); 
    } 
    else{ 
    NSData *resultData = [NSData dataWithContentsOfURL:url]; 
    NSString *responseString = [[NSString alloc]initWithData:resultData encoding:NSUTF8StringEncoding]; 
    } 

난 당신이 그것의 더 쉬운 접근을 시도 ... syncronous 요청을 보내기를 참조하십시오.

+0

하지만 responseString은 비어 있습니다. 왜 그럴까요? – iDia

+0

하드 코딩 된 URL로 시도하고 다시 확인하십시오 ... 브라우저에서 동일한 하드 코드 된 URL을 시도하십시오. – yunas

+0

그냥 메서드 유형이 "POST"가 아닌 "GET"인지 확인하십시오 – yunas

관련 문제