2

完成した 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];

私の本のIDのような名前のzipファイルをダウンロードしたいからです。

メソッドでは- (void)requestFinished:(ASIHTTPRequest *)request、ファイルを解凍するためにその ID が必要です。複数の非同期ダウンロードをサポートしたいので、ivar に ID を保存できません。

これどうやってするの?存在しない方法に似たものはあり[request postValueForKey: key]ますか?

4

2 に答える 2

7

作成するときはいつでも、そのユーザーASIFormDataRequest情報を設定して、このように取得してください。

ユーザー情報を設定するには、これを使用します。

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

ユーザー情報を取得するには、これを使用します。

-(void)requestFinished:(ASIHTTPRequest *)request
{
     NSDictionary *dict = [request userInfo];
     NSString *str = [dict objectForKey:@"YOUR_KEY"];
}
于 2012-06-22T09:42:21.467 に答える
4

userInfoのプロパティを使用できますASIHTTPRequest

以下のように

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

そして、requestFinished

- (void)requestFinished:(ASIHTTPRequest *)request
    yourid = [request userInfo] valueForKey:@"your id"];
于 2012-06-22T09:43:01.990 に答える