IOS 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: URLString'

5985 단어 exception
오늘은 요청한 날씨를 쓰고 싶습니다. 좋습니다. 쓸데없는 말은 하지 말고 코드를 붙여 주세요.
AFNetWorking을 사용하여 get 요청을 보냈지만 IOS' NSInternal Inconsistency Exception ',reason:' Invalid parameter not satisfying: URL String '을 잘못 보고했습니다.
번역해 보면 urlstring을 만족시킬 수 없습니다. 요청 주소가 틀렸을 수도 있습니다. 그러나 요청 주소가 맞습니다. 되돌아오는 것은 일련의 json 데이터입니다. 그리고 저는 헷갈렸습니다. 나중에 이 URL의 매개 변수는 직접 쓴 것임을 발견했습니다.
그리고parameters가 파라미터를 놓은 곳을 놓지 않았어요. 나중에 제가 파라미터를 단독으로 써서 끝냈어요!
[appDelegate.manager GET:@"http://api.map.baidu.com/telematics/v3/weather?location=  &output=json&ak=4zG5R7SqnQa" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
            NSDictionary *rootDict=responseObject;
            NSLog(@"%@",rootDict);
            NSArray *resultArray = [rootDict objectForKey:@"results"];
            NSDictionary *cityDict=[resultArray objectAtIndex:0];
            
            //    
            NSString *currentCity= [cityDict objectForKey:@"currentCity"];
            //      
            NSArray *weatherArray= [cityDict objectForKey:@"weather_data"];
            //          
            NSDictionary *firstDict=[weatherArray objectAtIndex:0];
            //       
            NSString *firstDate=[firstDict objectForKey:@"date"];
            //       
            NSString *weather=[firstDict objectForKey:@"weather"];
            //       
            NSString  *wind=[firstDict objectForKey:@"wind"];
            //       
            NSString *temper=[firstDict objectForKey:@"temperature"];
            
            [[[UIAlertView alloc] initWithTitle:[NSString stringWithFormat:@"    %@
:%@
%@
%@
%@
",currentCity,firstDate,weather,wind,temper] message:nil delegate:nil cancelButtonTitle:@" " otherButtonTitles:nil, nil] show]; } failure:^(AFHTTPRequestOperation *operation, NSError *error) { NSLog(@" "); }]; });

올바른 코드:
 NSDictionary *parameter=@{@"location": @"  ",@"output": @"json",@"ak": @"4zG5R7Lw8Fd3SqnQa"};
        [appDelegate.manager GET:@"http://api.map.baidu.com/telematics/v3/weather" parameters:parameter success:^(AFHTTPRequestOperation *operation, id responseObject) {

이곳의 매개 변수는 반드시parameters에 써야 합니다. 그렇지 않으면 링크에 있는 & 기호를 식별하지 못할 것 같습니다!

좋은 웹페이지 즐겨찾기