0

ファイル、画像、またはビデオを API REST サービスにアップロードする方法を教えてください。

チュートリアル、例、またはコードはありますか。

この概念を理解するのを手伝ってください。

4

3 に答える 3

2

これは、Web サービスがファイルを受け入れる方法に応じて、NSURLConnectionまたは を使用して行うことができます。ASIHTTPRequest

何を説明すればよいかがわかるように、問題についてより多くの情報を提供する必要があります。

于 2013-07-10T10:40:26.773 に答える
0

次のようにファイルをアップロードできます。

NSData *data = [NSData dataWithContentsOfFile:filePath];
NSMutableString *urlString = [[NSMutableString alloc] initWithFormat:@"name=thefile&&filename=recording"];
[urlString appendFormat:@"%@", data];
NSData *postData = [urlString dataUsingEncoding:NSASCIIStringEncoding 
                                   allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSString *baseurl = @"https://www.yourWebAddress.com/yourServerScript.php"; 

NSURL *url = [NSURL URLWithString:baseurl];
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:url];
[urlRequest setHTTPMethod: @"POST"];
[urlRequest setValue:postLength forHTTPHeaderField:@"Content-Length"];
[urlRequest setValue:@"application/x-www-form-urlencoded" 
          forHTTPHeaderField:@"Content-Type"];
[urlRequest setHTTPBody:postData];

NSURLConnection *connection = [NSURLConnection connectionWithRequest:urlRequest delegate:self];
[connection start];

NSLog(@"Started!");
于 2013-07-10T10:42:01.677 に答える
0

サーバーで画像を渡したい場合は、

 1) NSData *thumbData =  UIImagePNGRepresentation(imgPhoto.image);
 Then convert this NSData into encodeBase64WithData, then Pass to the Server.

ビデオをサーバーに渡したい場合は、

 2) NSData *videoData = [NSData dataWithContentsOfFile:YourVideoPath];
 Then convert this NSData into encodeBase64WithData, then Pass to the Server.

@"POST" メソッドを使用してすべてのデータを渡す必要があることを覚えておく必要があります。そうしないと、長い URL エラーがロードされます。

于 2013-07-10T10:50:57.093 に答える