首页 > 代码库 > ASIHTTPRequest框架使用(4)--上传数据

ASIHTTPRequest框架使用(4)--上传数据

数据上传是通过ASIFormDataRequest类实现的。相当于HTML的表单,因此ASIFormDataRequest请求对象的作用相当于提交表单数据,默认是Post请求方法。

- (IBAction)onClick:(id)sender

{

    NSString *strUrl = @"http://iosbook3.com/service/upload.php";   

    NSURL *url = [NSURL URLWithString:[strUrl URLEncodedString]];  

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];

    [request setPostValue:@"ios_yaoxinchao@163.com" forKey :@"email"];                           【1】

    NSString *path = [[NSBundle mainBundle] pathForResources:@"test1" ofType:@"jpg"];

    [request setFile:path forKey:@"file"];                                                                                 【2】

    // 设置代理

    [request setDelegate:self];

    [request setDidFinishSelector:@selector(requestSuccess:)];

    [request setDidFailSelector:@selector(requestError:)];

    [request startAsynchronous];

}

 

【1】:提交数据,使用的方法是setPostValue:forKey:

【2】:上传数据,使用的方法setFile:forKey:

setFile是设置要上传文件的路径,forKey是设置的键名字,这个键的名字相当于html表单中上传控件:

<input type="file" name = "file">

name与forKey对应。