首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Angular Spring Boot文件上传

Angular Spring Boot文件上传
EN

Stack Overflow用户
提问于 2017-07-24 21:17:42
回答 1查看 2.1K关注 0票数 0

我需要写一个上传angular模块,使用spring boot控制器和多部分文件。但是当我上传文件时,我有一个错误

代码语言:javascript
复制
Current request is not a multipart request

我尝试了很多更改,但每次我都得到这个错误。这是我的angular文件发送器数据服务

代码语言:javascript
复制
    function uploadFile (file) {
        var deferred = $q.defer();
        var fd = new FormData();
        fd.append('file', file);

        $http({
            data : fd,
            method: 'POST',
            transformRequest: angular.identity,
            url: "/api/private/upload",
            contentType: false,
            processData: false
        }).then(function (response) {
            deferred.resolve(response.data);
        }, function (response) {
            deferred.reject(response.message);
        }).catch(function (response) {
            deferred.reject(response.message);
        });
        return deferred.promise;
    }

这是我的控制器public String singleFileUpload(@RequestParam("file") MultipartFile file) { return "redirect:/uploadStatus"; }

无论有没有multipart Resolver,它都不能工作。你能帮我上传这个文件吗?

EN

回答 1

Stack Overflow用户

发布于 2018-06-07 20:09:58

uploadFile函数中,只需将ArrayBuffer转换为blob即可。请参阅示例here

代码语言:javascript
复制
  let fileReader = new FileReader();

  fileReader.onloadend = (e) => {
    let arrayBuffer = e.target.result;
    let data = arrayBufferToBlob(arrayBuffer, file.type);

    let formData = new FormData();
    formData.append('file', data);

    // do $http request here
  };

  fileReader.readAsArrayBuffer(yourFileFromInputElement);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45281729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档