2016-10-13 1 views
1

J'essaie de télécharger un fichier en utilisant $ ressource angulaire, je suis capable de frapper l'API mais la demande n'a aucun fichier. J'ai essayé la solution ici aussi: AngularJS: Upload files using $resource (solution)

Mon contrôleur:

     var formData = new FormData(); 
         formData.append('file', $scope.file); 
         appService.manualDataUpload(formData) 
          .then(function (response) { 
           //do something here 
          }) 
          .catch(function (error) { 
           logger.error('An error occurred while uploading the file !', error); 
          }); 

service Mon usine:

function manualDataUpload(formData) { 
      var /** @type {angular.Resource} */ 
      manualDataUploadResource = $resource(serviceBase + '/ManualDataUpload', formData, 
       { 
        save: { 
         method: 'POST', 
         transformRequest: angular.identity, 
         headers: { 
          'Content-Type': undefined 
         } 
        } 
       }); 

      return manualDataUploadResource 
       .save() 
       .$promise; 
     } 

Répondre

1

Retrait de la formData de ressources $ et en ajoutant dans le corps travaillé.

function manualDataUpload(formData) { 
      var /** @type {angular.Resource} */ 
      manualDataUploadResource = $resource(serviceBase + '/ManualDataUpload', {}, 
       { 
        save: { 
         method: 'POST', 
         transformRequest: angular.identity, 
         headers: { 
          'Content-Type': undefined 
         } 
        } 
       }); 

      return manualDataUploadResource 
       .save(formData) 
       .$promise; 
     }