2017-07-05 2 views
0

私は、ファイルにファイルのアップロードがangularjsと春ブーツ

controller.jsをアップロードしたい

userService.saveProfile($scope.user.profile.companyLogo).then(function(response){ 
    if(response.status==201){ 
     $('#profileModal').hide(); 
     $scope.load(); 
    } 
}); 

service.js

saveProfile:function(logo){ 
      var formData = new FormData(); 
      formData.append("file",logo); 
      var retVal = $http({ 
       method : 'POST', 
       url : '/api/user/profile', 
       transformRequest: angular.identity, 
       headers: {'Content-Type': undefined}, 
       data: formData 
      }).then(function(response){ 
       return response; 
      }); 
      return retVal; 
     } 

Controller.java

@RequestMapping(value="/profile",method = RequestMethod.POST,headers="'Content-Type':'multipart/form-data'") 
    public ResponseEntity saveProfile(@RequestBody MultipartFile file){ 
     System.out.println(file); 
     return new ResponseEntity(HttpStatus.CREATED); 
    } 

で失敗します@RequestMappingにヘッダーを追加すると私は404を得ていると私はそれを削除する場合、私は、ファイルのヌル

を得ている私にそれが働いた

+0

の@RequestPartを使用? – Vivz

+0

@Vivzはい私はサービスの中で価値を得ている – poojadave

+0

それは内部に行くのですか? – Vivz

答えて

0

ファイルをアップロードすることの正しい方法を提案してください!

私は@RequestMappingからヘッダを削除し、代わりにあなたがサービス内のファイルの値を取得している@RequestBody

@RequestMapping(value="/profile",method = RequestMethod.POST) 
    public ResponseEntity saveProfile(@RequestPart("file") MultipartFile file){ 
     System.out.println(file); 
     return new ResponseEntity(HttpStatus.CREATED); 
    }