Я разрабатываю решение, которое использует API автозаполнения от wunderground.Я сталкиваюсь с проблемой с результатами, когда язык устройства по умолчанию отличается от английского.
Для воспроизведения проблемы перейдите в симулятор Ipad, настройки, общие, международные, язык и выберите любой, отличный от английского.
В Safari введите URL http://autocomplete.wunderground.com/aq?query=san%20f&format=json, и вы увидите, что возвращается только один город Сан-Фернандо.
Если вы вернетесь на английский язык и попробуете тот же URL, то вернетесьСан-Франциско, Сан-Фелипе, Сан-Франциско, Эль-Альто и многие другие.
Почему возникает такая разница?Как я могу решить эту проблему?
Чтобы получить JSON, я использую следующий код:
NSString* city = @"san f";
NSString* encodedCity = [NSString stringWithFormat:@"http://autocomplete.wunderground.com/aq?query=%@&format=json", [city stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:encodedCity]];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *json_string = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];