【问题标题】:Upload file using ng-file-upload and Spring Boot使用 ng-file-upload 和 Spring Boot 上传文件
【发布时间】:2017-08-16 16:41:23
【问题描述】:

我正在尝试使用 Angular 和 Spring Boot 上传视频。我在角度使用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 错误,我不知道如何解决它。如果您可以帮助我,或者您可以建议另一种很棒的方法

谢谢。

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

    • 不,没有调用该方法。我没有堆栈跟踪,我收到“error.internalServerError”。
    【解决方案2】:

    将您上传的标题设置为:

    headers: { 'Content-Type': undefined }
    

    最好这样发送您的数据:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-08
      • 1970-01-01
      • 2015-12-11
      • 2016-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-14
      相关资源
      最近更新 更多