2013-11-28 4 views
5

나는 2.0 afnetworking와 JSON을로드하고있어 URLString는 :AFHTTPRequestOperationManager의 URLString는 인코딩 및 잘못된 매개 변수는 만족하지 :

NSString *weatherUrl = @"http://www.souche.com/pages/dicAction/loadRootLevel.json?request_message={\"type\":\"car-subdivision\"}"; 
weatherUrl = [weatherUrl stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; 
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; 
[manager GET:weatherUrl parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { 
    NSLog(@"JSON: %@", responseObject); 
} failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    NSLog(@"Error: %@", error); 
}]; 

콘솔 오류 :

'Invalid parameter not satisfying: URLString' 

는 URL 인코딩이 필요합니까?

하지만 난 그것은 다음과 같이 수행

NSString *weatherUrl = @"http://www.souche.com/pages/dicAction/loadRootLevel.json?request_message={%22type%22:%22car-subdivision%22}"; 

여전히 오류!

어떻게하면됩니까?

+2

. 다른 것들 인 매개 변수는 NSDictionary에 넣고'parameters'를 전달해야합니다 (여기서'nil'을 전달합니다). –

+0

@AaronBrager 덕분에 NSDictionary와 작동합니다. – justin

답변

0

URL을 구성하는 데 많은 문제가 있거나 AFNetworking에 매개 변수를 전달 (전달하지 않음)하는 방법이있는 것처럼 보입니다. AFNetworking이 직접 쿼리 문자열을 구성 할 필요가 없습니다. 위의 내 코멘트에서 언급했듯이 URL의 일부로 UserName = 'abc'를 query = 전달하는 것은 좋지 않은 것처럼 보입니다. 그러나, 여기 URL이 약간 달랐다 경우 AFNetworking의 GET 메소드를 호출 할 것입니다 방법에 대한 간단한 예는 다음과 같습니다

URL format: https:////?username=abc&companyId=&page=1&pageSize=25&filterResultByColumns=true

이 코드를보십시오 : 귀하의 URL 문자열에서 .json을 올려 D