文件上传到帆

时间:2015-03-04 07:00:37

标签: angularjs sails.js angular-file-upload

我想知道,如何使用角度上传

在风帆中使用上传文件代码

这是角度

的代码
 var app = angular.module('app', ['angularFileUpload']);

        app.controller('ImageCtrl', ['$scope', '$upload', function ($scop

e, $upload) {
        $scope.$watch('files', function () {
            $scope.upload($scope.files);
        });

        $scope.upload = function (files) {

          window.alert(JSON.stringify(files));
            if (files && files.length) {
                for (var i = 0; i < files.length; i++) {
                    var file = files[i];
                    $upload.upload({
                        url: '???????',
                        fields: {
                            'username': $scope.username
                        },
                        file: file
                    }).progress(function (evt) {
                        var progressPercentage = parseInt(100.0 * evt.loaded / evt.total);
                        console.log('progress: ' + progressPercentage + '% ' +
                                    evt.config.file.name);
                    }).success(function (data, status, headers, config) {
                        console.log('file ' + config.file.name + 'uploaded. Response: ' +
                                    JSON.stringify(data));
                    });
                }
            }
        };
    }]);

在上面的代码中,我应该给url什么? ,我的要求是,我想使用sails mongodb在本地上传文件。

任何人请分享服务器端nodejs代码..

1 个答案:

答案 0 :(得分:0)

Sails有内置的流媒体文件上传工具,名为skipper。通常,您可以将文件从角度上传到任何风帆端点。然后你只需要在控制器中执行类似的操作:

req.file('avatar').upload(function (err, uploadedFiles){
    if (err) return res.send(500, err);
    return res.send(200, uploadedFiles);
});

您也可以传递队长options

req.file('avatar').upload({
    // ...any other options here...
}, ...);

如果您的应用程序应经常上传文件,我建议您根据skipper API为此创建服务。