0

我想知道,如何使用角度上传在 Sails 中使用上传文件代码

这是角度的代码

 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代码..

4

1 回答 1

0

Sails 具有内置的流文件上传实用程序,称为skipper。一般来说,您可以将文件从 Angular 上传到任何 Sails 端点。然后你只需要在你的控制器中执行这样的事情:

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

您还可以传递船长选项

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

如果您的应用程序应该经常上传文件,我建议您基于船长 API 为此创建服务。

于 2015-03-04T15:39:13.520 回答