【发布时间】:2010-08-03 14:19:01
【问题描述】:
我需要upload 一个文件。我已经尝试过ASIRequest 或其他任何名称,但我希望有一些详细的指南。
【问题讨论】:
我需要upload 一个文件。我已经尝试过ASIRequest 或其他任何名称,但我希望有一些详细的指南。
【问题讨论】:
您需要使用 ASIFormDataRequest。您将在请求中将文件作为 NSData 对象发送。这是发送 JPEG 的示例。如果您有其他文件类型,则需要将其转换为 NSData 对象以传输到服务器。
NSString *filename = @"image.jpg";
UIImage *image = [UIImage imageNamed:@"image.jpg"];
NSData *fileData = UIImageJPEGRepresentation(image, 0.9);
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL urlWithString:@"http://www.yoursite.com"]];
[request setPostValue:filename forKey:@"name"];
[request setData:fileData forKey:@"file"];
[request setTimeOutSeconds:500];
[request setRequestMethod:@"POST"];
[request startSynchronous];
// handle response from server
ASI 文档在标题为“使用 ASIFormDataRequest 发送表单 POST”的部分中对此进行了讨论 - http://allseeing-i.com/ASIHTTPRequest/How-to-use
【讨论】: