ASIHTTPRequest
を使用していた古いアプリケーションコードをAFNetworking
に更新しています。私の場合、私はAPI
にデータのベンチを送っています、これらのデータは異なるタイプです:画像とその他。ここでAFNetworkingで他のパラメータとともに画像を送信
は私が共有インスタンスを要求、APIクライアントを実装し、これまでの採用、のparams辞書を用意し、リモートAPIに送信するコードです:
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
}];
私がしたい時にケースになりますどのようなparams
辞書に画像を追加しますか? ASIHTTPRequest
で
、私は次の操作を実行するために使用:
NSData *imgData = UIImagePNGRepresentation(anImage);
NSString *newStr = [anImageName stringByReplacingOccurrencesOfString:@"/"
withString:@"_"];
[request addData:imgData
withFileName:[NSString stringWithFormat:@"%@.png",newStr]
andContentType:@"image/png"
forKey:anOtherKey];
私はAFNetworking
ドキュメントに掘っ、彼らはこのようなNSMutableRequest
に画像を追加した:
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"];
}];
どのように私はこれを混ぜる必要があります私のイメージデータをAPIClient
リクエストに統合するためのすっきりした方法で一緒に?あらかじめThanx。
こんにちは、の? 〜 – Malloc
@ "画像"は、アップロードしたい画像のキーです。 –
それはあなたに役立つのですか? –