使用ng-file-upload和Spring Boot上传文件

时间:2017-03-23 21:53:04

标签: java angularjs spring-boot file-upload ng-file-upload

我正在尝试使用角度和弹簧启动进行视频上传。我在角度和控制器中使用ng-file-upload我使用以下方法上传文件

   Upload.upload({
       url: 'api/uploadFile',
       data: {file: file, 'username': $scope.username}
   })

在服务器上,我已经声明了我的资源

@RestController
@RequestMapping("/api")
public class FileUploadResource {

    @ResponseStatus(HttpStatus.OK)
    @PostMapping("/uploadFile")
    public void uploadFile(@RequestParam("file") MultipartFile file,  @RequestParam("username") String name)

当我尝试上传文件时,我一直收到500错误,我无法弄清楚如何解决它。如果你可以帮助我,或者你可以建议另一种方法,那将是很好的

感谢。

2 个答案:

答案 0 :(得分:1)

是否调用了uploadFile控制器方法?我猜测从uploadFile方法抛出异常,在这种情况下,您应该在服务器日志中显示一个堆栈跟踪,它将引导您找到问题所在。

答案 1 :(得分:0)

将上传中的标题设置为:

headers: { 'Content-Type': undefined }

最好像这样发送您的数据:

var formData = new FormData();
formData.append("file", file);
formData.append("username", username);

并将formData作为上传的数据发送。