Tôi đang cập nhật mã ứng dụng cũ đã sử dụng ASIHTTPRequest
với AFNetworking
. Trong trường hợp của tôi, tôi đang gửi một băng ghế dự bị dữ liệu đến API
, các dữ liệu này là các loại khác nhau: Hình ảnh và hình ảnh khác.gửi hình ảnh cùng với các thông số khác với AFNetworking
Đây là mã giả đã sử dụng cho đến nay, việc thực hiện một ứng dụng API, yêu cầu một trường hợp chia sẻ, chuẩn bị từ điển params và gửi cho API từ xa:
NSMutableDictionary *params = [NSMutableDictionary dictionary];
[params setValue:@"Some value" forKey:aKey];
[[APIClient sharedInstance]
postPath:@"/post"
parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
//some logic
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
//handle error
}];
gì sẽ là trường hợp khi tôi muốn thêm hình ảnh vào từ điển params
?
Với ASIHTTPRequest
, tôi sử dụng để làm như sau:
NSData *imgData = UIImagePNGRepresentation(anImage);
NSString *newStr = [anImageName stringByReplacingOccurrencesOfString:@"/"
withString:@"_"];
[request addData:imgData
withFileName:[NSString stringWithFormat:@"%@.png",newStr]
andContentType:@"image/png"
forKey:anOtherKey];
tôi đào vào AFNetworking
tài liệu và thấy họ phụ thêm hình ảnh trong một NSMutableRequest
như thế này:
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
NSData *imageData = UIImageJPEGRepresentation([UIImage imageNamed:@"avatar.jpg"], 0.5);
NSMutableURLRequest *request = [httpClient multipartFormRequestWithMethod:@"POST" path:@"/upload" parameters:nil constructingBodyWithBlock: ^(id <AFMultipartFormData>formData) {
[formData appendPartWithFileData:imageData name:@"avatar" fileName:@"avatar.jpg" mimeType:@"image/jpeg"];
}];
Làm thế nào tôi nên trộn này cùng nhau trên một cách gọn gàng để tích hợp dữ liệu hình ảnh của tôi vào yêu cầu APIClient
? Thanx trước.
Hi, nơi nào bạn đặt 'key' cho hình ảnh? Thanx. – Malloc
@ "hình ảnh" là chìa khóa cho bất kỳ hình ảnh nào bạn muốn tải lên. –
Nó có giúp bạn không? –