如何将保存的视频上传到远程服务器,使用 cordovaCapture 捕获?

How to upload saved video to a remote server, captured using cordovaCapture?

我使用cordovaCapture的captureVideo方法如下:

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

我得到的文件路径为

file:/storage/....mp4

如何将此文件上传到远程服务器,我能否直接通过我的控制器访问此文件,还是必须处理 url 文件?

我正在使用 Ionic 框架。

如有任何帮助,我们将不胜感激。

很简单。这仅适用于 ionic 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>

它的工作。我做过很多次了。