405 метод не допускается ошибка для загрузки файла в angularjs (IIS сервер)

0

Я создал функцию загрузки в angularjs, и когда я пытаюсь сохранить файл в папке, я продолжаю получать ошибку 405 method not allowed. Он выполнялся локально на моем сервере IIS.

файл контроллера:

.controller('fileuploadCtrl',  ['$scope','$route','$upload', function ($scope,$route,$upload) { 

    $scope.upload = function (files) {
        if (files && files.length) {
            for (var i = 0; i < files.length; i++) {
                var file = files[i];
                //var path = 'temp/files/' + $scope.information.id + '-' + file.name;
                var path = 'temp/files';
                $upload.upload({
                    url: path,
                    file: file,
                    fields: {
                        'username': $scope.username
                    },
                    headers: { 'Content-Type': 'multipart/form-data' }
                }).progress(function (evt) {
                    var progressPercentage = parseInt(100.0 * evt.loaded / evt.total);

                    $scope.percentComplete = progressPercentage;
                    $scope.items.attachment = evt.config.file.name;

                }).success(function (data, status, headers, config) {

                }).error(function (data, status, headers, config) {

                });
            }
        }
    };

}]);

HTML файл:

<input type="file" ng-file-select name="file" ng-file-change="upload($files)"  >
<div class="progress" style=" margin: 0%">
    <div class="progress-bar" role="progressbar" ng-style="{ 'width': percentComplete + '%' }" style="width: 0%;">
        <span ng-if="percentComplete === 100">{{items.attachment}} upload completed successfully</span>
    </div>
    <span ng-if="percentComplete > 0" class="fileupload">{{percentComplete}}%</span>
 </div>

Изображение 174551

  • 0
    У вас есть бэкэнд для обработки получения файла? У вас должно быть что-то, что обрабатывает квитанцию, которая, скорее всего, включает в себя другой язык, такой как PHP, Ruby, Perl, C # и т. Д.
  • 0
    Привет miltox, я использую nodeJS для обработки бэкэнда.
Показать ещё 1 комментарий
Теги:
upload
angularjs-directive

1 ответ

0

Вы должны убедиться, что ваш локальный сервер IIS разрешает запросы POST:

Как настроить IIS для приема запросов POST?

Сервер также может потребовать разрешить mime-тип файла, который вы пытаетесь загрузить:

https://technet.microsoft.com/en-us/library/cc725608(v=ws.10).aspx

  • 0
    Привет @itsphilz, я пытаюсь загрузить PDF-файлы. У меня есть расширение .pdf, добавленное в типы MIME, но оно все еще не работает. Я не уверен, какие глаголы добавить в отображения обработчиков. Не могли бы вы, пожалуйста, дайте мне знать подробно. Спасибо

Ещё вопросы

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