Intereting Posts
Индексный путь для нескольких динамических прототипов Держите контроллер состояния и только измените вид Добавление объектов в массив с использованием Swift без дублирования MonoTouch.Dialog: использование другого шрифта в одном и том же элементе StringElement как рисовать объект с рассеянной текстурой после объекта с несколькими текстурами Как изменить цвет кнопки UIAlertController универсально в ObjC CLBeacon получить расстояние от IBeacons? Удаление ячейки из UITableView в Swift Убедитесь, что метод вызывается дважды с двумя разными параметрами Использование памяти: когда имеет смысл использовать UINavigationController, а когда нет? Как я могу получить размер каталога на iOS 10.3 с APFS? Как загрузить UIWebView при нажатии кнопки в другом представлении в ios Как Skype реализует длинные push-уведомления в iOS для входящих вызовов? iOS 6, Segue: prepareForSegue не вызывается при первом нажатии на UITableViewCell Связанное значение в условной привязке должно быть необязательного типа

Получить postValue из готового ASIHTTPRequest

Я хотел бы знать, как получить значение post из завершенного ASIHTTPRequest.

Когда я выполняю запрос, я делаю это:

[request setPostValue:uniqueID forKey:@"bookUniqueId"]; NSFileManager *fileManager = [[NSFileManager alloc]init]; if (![fileManager fileExistsAtPath:tempDir]) { [fileManager createDirectoryAtPath:tempDir withIntermediateDirectories:YES attributes:nil error:nil]; } [fileManager release]; tempDir = [[tempDir stringByAppendingPathComponent:uniqueID]stringByAppendingPathExtension:@"zip"]; [request setDownloadDestinationPath:tempDir]; [request setDelegate:self]; [request startAsynchronous]; 

потому что я хочу загрузить zip-файл, названный как идентификатор моей книги.

В - (void)requestFinished:(ASIHTTPRequest *)request метода - (void)requestFinished:(ASIHTTPRequest *)request мне нужен этот идентификатор, чтобы распаковать файл. Я не могу сохранить ID в ivar, потому что хочу поддерживать несколько асинхронных загрузок.

Как я могу это сделать? Есть ли что-то похожее на несуществующий метод [request postValueForKey: key] ?

Когда вы создаете свой ASIFormDataRequest Просто установите его userinfo и получите его так.

Для настройки пользователя Info используйте это.

 [request setUserInfo:[NSDictionary dictionaryWithObject:@"YOUR_VALUE" forKey:@"YOUR_KEY"]]; 

Для получения информации о пользователе используйте это.

 -(void)requestFinished:(ASIHTTPRequest *)request { NSDictionary *dict = [request userInfo]; NSString *str = [dict objectForKey:@"YOUR_KEY"]; } 

Вы можете использовать свойство ASIHTTPRequest для ASIHTTPRequest

Как и следующее

 request.userInfo = [[NSMutableDictionary alloc] init]; [request.userInfo setValue:yourID forKey:@"your id"]; 

И затем в requestFinished

 - (void)requestFinished:(ASIHTTPRequest *)request yourid = [request userInfo] valueForKey:@"your id"];