Не могу заставить загрузку файла работать с помощью библиотеки nervgh

0

Я новичок в angularJs. Я пытаюсь загрузить файл.tar на свой сервер, используя библиотеку загрузки файлов с помощью нервной системы. Я использовал код, как это показано в примере, но я получаю исключение 500 с сервера с указанием формата файла недопустимого архивного файла. Тем не менее, я могу загрузить тот же файл и отправить тот же запрос через POSTMAN. Любая помощь будет оценена по достоинству! Угловая версия: 1.5.8

Мой взгляд

/*View : apps.html*/
    <div class="row">
        <div class="col-md-3">
            Single
            <input type="file" nv-file-select="" uploader="uploader" />
        </div>
        <button type="button" class="btn btn-success btn-s" ng-click="uploader.uploadAll()" ng-disabled="!uploader.getNotUploadedItems().length">
            <span class="glyphicon glyphicon-upload"></span> Upload all
        </button>
    </div>

Мой контроллер

angular.module('testAngularLmApp')
.controller('AppsCtrl', ['$scope', 'FileUploader', 'appsService', 'tokenService', function($scope, FileUploader, appsService, tokenService) {
    var token = tokenService.getToken(); //LoginCtrl.getToken();

    /*File UPload Functions*/

    var headers = {
        'X-Token-Id': token,
        'X-Connector-Id': 'App5',
        'Content-Type': undefined
    };

    var uploader = $scope.uploader = new FileUploader({
        url: '/api/v2/apps',
        headers: headers,
        transformRequest: angular.identity,
        method: 'POST'
    });

    uploader.onWhenAddingFileFailed = function(item /*{File|FileLikeObject}*/ , filter, options) {
        console.info('onWhenAddingFileFailed', item, filter, options);
    };
    uploader.onAfterAddingFile = function(fileItem) {
        console.info('onAfterAddingFile', fileItem);
    };
    uploader.onAfterAddingAll = function(addedFileItems) {
        console.info('onAfterAddingAll', addedFileItems);
    };
    uploader.onBeforeUploadItem = function(item) {
        console.info('onBeforeUploadItem', item);
        item.formData.push(headers);
    };
    uploader.onProgressItem = function(fileItem, progress) {
        console.info('onProgressItem', fileItem, progress);
    };
    uploader.onProgressAll = function(progress) {
        console.info('onProgressAll', progress);
    };
    uploader.onSuccessItem = function(fileItem, response, status, headers) {
        console.info('onSuccessItem', fileItem, response, status, headers);
    };
    uploader.onErrorItem = function(fileItem, response, status, headers) {
        console.info('onErrorItem', fileItem, response, status, headers);
    };
    uploader.onCancelItem = function(fileItem, response, status, headers) {
        console.info('onCancelItem', fileItem, response, status, headers);
    };
    uploader.onCompleteItem = function(fileItem, response, status, headers) {
        console.info('onCompleteItem', fileItem, response, status, headers);
    };
    uploader.onCompleteAll = function() {
        console.info('onCompleteAll');
    };

    console.info('uploader', uploader);

    /*Actually upload a file*/
    $scope.uploader.uploadAll();
    /*End of file upload*/


}]);
Теги:
angular-file-upload

1 ответ

1
Лучший ответ

Это проблема с сервером, а не угловая. Покажите нам свой серверный сценарий.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню