首页 > 解决方案 > 未找到多部分边界

问题描述

使用 Rest Client Chrome 工具,我在我的请求中上传了一个 JSON 文件,比如 sample.json。低于异常。尝试将标头作为多部分/表单数据传递,也没有传递后者。但结果是一样的。我做得对吗?

the request 
was rejected because no multipart boundary was found

..

public HttpEntity<?> uploadJsonFile(@PathVariable("jsonFileID") String
    jsonFileID, @RequestParam("file") MultipartFile file) throws Exception 
    {
        // Some code here
    }

..

Failed to parse multipart 
servlet request; nested exception is java.io.IOException: 
org.apache.tomcat.util.http.fileupload.FileUploadException: the request 
was rejected because no multipart boundary was found] with root cause

org.apache.tomcat.util.http.fileupload.FileUploadException: the request 
was rejected because no multipart boundary was found
at org.apache.tomcat.util.http.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:831) ~[tomcat-embed-core-8.5.32.jar:8.5.32]
at org.apache.tomcat.util.http.fileupload.FileUploadBase.getItemIterator(FileUploadBase.java:256) ~[tomcat-embed-core-8.5.32.jar:8.5.32]
at org.apache.tomcat.util.http.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:280) ~[tomcat-embed-core-8.5.32.jar:8.5.32]
at org.apache.catalina.connector.Request.parseParts(Request.java:2884) ~[tomcat-embed-core-8.5.32.jar:8.5.32]
at org.apache.catalina.connector.Request.parseParameters(Request.java:3232) ~[tomcat-embed-core-8.5.32.jar:8.5.32]

标签: springspring-boothttprequest

解决方案


仅供您参考,在 java 中您可以使用:

String boundary = Long.toHexString(System.currentTimeMillis());
            request.getHeaders().setContentType("multipart/form-data; boundary="+boundary);

推荐阅读