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

ali*_*sav 4 cordova ionic-framework cordova-plugins ionic

我使用cordovaCapture的captureVideo方法如下:

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

我得到的文件路径为

文件:/存储/ MP4 ....

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

我正在使用Ionic框架.

任何帮助将非常感激.

小智 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
        });
    }

});
Run Code Online (Sandbox Code Playgroud)

毕竟你需要像这样调用这个函数

<button class="button" ng-click="upload()">video upload</button>
Run Code Online (Sandbox Code Playgroud)

它的工作.我做了很多次.