2015-07-21 25 views
4

我使用cordovaCapture的captureVideo方法如下:如何將保存的視頻上傳到遠程服務器,使用cordovaCapture捕獲?

$cordovaCapture.captureVideo(options) 
    .then(function(videoData) { 
    var file_path = videoData[0].fullPath; 
    // upload to server 
}); 

我得到儘可能

文件的路徑:/存儲/ MP4 ....

如何將這個文件上傳到遠程服務器,我能夠直接通過我的控制器訪問這個文件,還是必須處理一個url?

我正在使用Ionic框架。

任何幫助將不勝感激。

+1

你需要使用文件上傳插件:http://ngcordova.com/docs/plugins/fileTransfer/來上傳它。 –

回答

5

這很簡單。這將只在離子FW

首先你必須安裝文件傳輸插件。如果沒有使用這個命令:

cordova plugin add org.apache.cordova.file-transfer

承擔http://www.samplewebsite.com/upload。是您的服務器超鏈接。

example.controller("ExampleController", function($scope, $cordovaFileTransfer) { 

    $scope.upload = function() { 
     var options = { 
      fileKey: "avatar", 
      fileName: "filename.mp4", 
      chunkedMode: false, 
      mimeType: "video/mp4" 
     }; 
     $cordovaFileTransfer.upload("http://www.samplewebsite.com/upload", "file:/storage/....mp4", options).then(function(result) { 
      console.log("SUCCESS: " + JSON.stringify(result.response)); 
     }, function(err) { 
      console.log("ERROR: " + JSON.stringify(err)); 
     }, function (progress) { 
      // constant progress updates 
     }); 
    } 

}); 

畢竟你需要調用這個函數像這樣

<button class="button" ng-click="upload()">video upload</button> 

其工作。我做了很多次。

+0

謝謝,試過這個,它工作。這個插件在ngCordova中沒有像在Github鏈接中那麼好記錄。 – aliasav

+0

@Prabhu:如何從我們的存儲介質上傳本地文件? – Muhsin

+0

有幫助的答案。 我的問題是使用科爾多瓦我必須打開圖庫彈出並選擇視頻並上傳它。我正在使用$ cordovaCamera.getPicture並提供「options-> mediaType-:navigator.camera.MediaType.VIDEO」 hardluck我可以在adb logcat中看到視頻的路徑:/ storage/emulated/0/Video/abcd.3gp但文件正在上傳。 –

相關問題