こんにちは、私は ASIHTTPRequest を使用していますが、リクエストに含まれるキリル文字の問題に直面しています。
こんな要望がありました:
self.getUsersFromSearchRequest = [ASIHTTPRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@&text=%@&count=20", SEARCH_FOR_USER, searchBar.text]]];
[self.getUsersFromSearchRequest setDelegate:self];
[self.getUsersFromSearchRequest startAsynchronous];
この後、requestFinished:およびrequestFailed:メソッドがあります。
- (void)requestFinished:(ASIHTTPRequest *)request {
self.dictionary = [NSJSONSerialization JSONObjectWithData:[request responseData] options:NSJSONWritingPrettyPrinted error:nil];
if([request isEqual:self.getUsersFromSearchRequest]) {
if ([[self.dictionary objectForKey:@"response"] isKindOfClass:[NSArray class]]) {
self.resultSearchUser = [self.dictionary objectForKey:@"response"];
[self.searchDisplayController.searchResultsTableView reloadData];
}
self.searchResultsTable.hidden = NO;
[MBProgressHUD hideHUDForView:self.view animated:YES];
}
}
- (void)requestFailed:(ASIHTTPRequest *)request {
UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:NSLocalizedString(@"Internet Connection Error Alert Title", @"This is the Internet Connection Error Alert Title") message:NSLocalizedString(@"Internet Connection Error Alert Message Text", @"This is the Internet Connection Error Alert Message Text") delegate:nil cancelButtonTitle:NSLocalizedString(@"Internet Connection Error Alert Cancel Button Title", @"This is the Internet Connection Error Alert Cancel Button Title") otherButtonTitles:nil];
[alertView show];
}
検索テキスト フィールドにラテン文字を入力すると、すべてがうまくいきますが、キリル文字を入力した後、すぐにrequestFailed:と入力します。なにが問題ですか?
前もって感謝します!