2017-12-01 24 views
0

データをアップロードするために以下のコードを使用してください。しかし、私はmp4形式のバイナリデータをアップロードする必要があります。今私は移動フォーマットを許可するファイルパスのみを取得しますが、そのパスのmp4を変換する必要があります。UIImagePickerControllerを使用してサーバーにビデオをアップロードする方法

UIImagePickerController * imagePicker = [[UIImagePickerController alloc]init]; 

imagePicker.mediaTypes = [[NSArray alloc] initWithObjects: (NSString *) kUTTypeMovie, nil]; 

[self presentViewController:imagePicker animated:YES completion:nil]; 



-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info 
{ 

    NSString *videoPath = [[info objectForKey:UIImagePickerControllerMediaURL] path]; 

} 
+0

サーバーにビデオをアップロードするために、あなたは親切にこの通過しNSUrlSession –

答えて

0

NSUrlSessionを使用してファイルをバイト形式でアップロードできます。ファイルをNSDataに変換し、要求に添付してください。あなたのimagePickerデリゲートでは、このようにそれを行うことができます。

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info 
{ 
    NSString *videoPath = [[info objectForKey:UIImagePickerControllerMediaURL] path]; 
    NSData *videoData = [NSData dataWithContentsOfFile:videoPath]; 

    NSURLRequest *uploadRequest = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:@"Your server url"]]; 
    [uploadRequest setHTTPMethod:@"POST"]; 

    NSURLSessionUploadTask *uploadTask = [[NSURLSession sharedSession] uploadTaskWithRequest: uploadRequest fromData: videoData completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { 

     //Handle your response here 
    }); 

    [uploadTask resume]; 
} 
+0

を使用する必要がある - https://stackoverflow.com/questions/12245929/uploading-video -file-to-server-from-iphone – user3182143

+0

NSURLConnectionは廃止予定です。これからはNSURLConnectionの代わりにNSURLSessionを使用してください。 – Zealous

関連する問題