Pessoal já não sei mais o que fazer Upload de imagens angularjs 415 (Unsupported Media Type)

60 views
Skip to first unread message

Ricardo Kreycek

unread,
May 23, 2017, 5:50:58 PM5/23/17
to AngularJS BR
Estou tentando fazer um uploa de imagem e só aparece erro 415 já tentei de tudo, o que estou errando, fiz com c#, meu angular é versão v1.6.3


HTML

 <input type="file" id="file1" name="file" multiple ng-files="vm.dados.getTheFiles($files)" />


Controler

function UserController(UserService, BaseService, $webConfig, AuthService, $scope, upload,  $q)
{
  var vm=this;
  vm.dados={};

var formdata = new FormData();    
  vm.dados.getTheFiles = function ($files) {
      console.log('teste');
        $scope.imagesrc=[];       

        for(var i=0; i<$files.length; i++) {

            var reader= new FileReader();
            reader.fileName= $files[i];

            reader.onload=function(event) {
                var image= {};
                image.Name= event.target.fileName;
                image.Size= (event.total/1024).toFixed(2);
                image.src=event.target.result;
                //$scope.imagesrc.push(image);
                //$scope.$apply();
            };
            reader.readAsDataURL($files[i]);
        }

        angular.forEach($files, function(value, key) {    
        console.log(key);  
        console.log(value);      
            formdata.append("afile", value);
        });

          var request = {
            method : 'POST',
            withCredentials: true,
            url: $webConfig.API_URL + 'api/user/upload',
            data: formdata,
            headers: {'Content-Type': undefined},
            transformRequest : angular.identity
        };
    
   
      BaseService.executeUpload2(request, function(response){

      });

    };

});


Diretiva


angular.module('riici')
.directive('ngFiles', ngFiles);

ngFiles.$inject=['$parse'];

function ngFiles($parse) {
    return {
              restrict: 'AE',
              link: function (scope, element, attrs) {
                    var onChange = $parse(attrs.ngFiles);

                    element.bind('change', function(event){                      
                            onChange(scope,{ $files: event.target.files });                           
                    });
               }
          };
}


ControllerWebApi.cs

 [HttpPost]
        [AllowAnonymous]       
        public HttpResponseMessage Upload(HttpPostedFileBase[] files)
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                this.Request.CreateResponse(HttpStatusCode.UnsupportedMediaType);
            }


            return null;
           

        }








Print.jpg

principe...@gmail.com

unread,
May 23, 2017, 5:55:15 PM5/23/17
to angula...@googlegroups.com
Unsupported Media Type? o q significa? tipo de media nao suportado...vc nao esta enviando um arquivo valido

--
Você recebeu essa mensagem porque está inscrito no grupo "AngularJS BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para angularjs-br+unsubscribe@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

principe...@gmail.com

unread,
May 23, 2017, 5:55:55 PM5/23/17
to angula...@googlegroups.com
o jpeg tem varias extensoes, entre elas: jpeg, jpg e pjpeg...verifique no seu backend

Rodrigo Kieling Sturm

unread,
May 23, 2017, 6:33:48 PM5/23/17
to angula...@googlegroups.com
Passei por esse problema há muito pouco tempo. 

O meu problema era no meu backend java. 

Abraços. 
Reply all
Reply to author
Forward
0 new messages