当前位置: 首页 > 知识库问答 >
问题:

上载多部分文件springboot mockMvc所需的请求部分“文件”不存在,正在测试控制器

隆飞驰
2023-03-14

尝试测试上载文件时,获取此“文件”不存在错误,但控制器在测试之外工作良好。文件不在这里有什么原因吗?

控制器

public UploadResponse uploadFile(
    @RequestPart
         MultipartFile file,
     @RequestParam(value = “name”)
         String name) {}

控制器测试

MockMultipartFile file
    = new MockMultipartFile(
    "photo.jpeg",
    "photo.jpeg",
    MediaType.IMAGE_JPEG_VALUE,
    "photo".getBytes()
);


this.mockMvc.perform(
            multipart(“/uploadfile”)
                .file(file)
                .param(“name”, “bob”))
        .andDo(print())
        .andExpect(status().isOk())
        .andExpect(content().contentType("application/json"))
  }

共有1个答案

姚凯歌
2023-03-14

此处文件名应为“file”

MockMultipartFile file
    = new MockMultipartFile(
    "file",
    "photo.jpeg",
    MediaType.IMAGE_JPEG_VALUE,
    "photo".getBytes()
);

 类似资料:
  • 我正在尝试将图像作为广告中的字符串字段上传,但当将文件添加到正文时,我遇到了这个错误:“异常”:“org.springframework.web.multipart.support.MissingServletRequest estPartException”,“消息”:“所需的请求部分'file'不存在”。我在这里寻找有关此问题的答案,但没有任何帮助。我将很高兴得到任何帮助。 我的控制器: 我的

  • 我一直在看这个,但似乎我的问题在别处。我试图上传一个文件。当前定义为: 上传过程如下: 而这是Spring REST终结点: 问题是,Spring抛出了一个异常,告诉我参数不存在: 这是请求信息: 我怎样才能使这个文件上传工作?

  • 我有一个执行文件上传的控制器,我正在尝试从另一个服务向控制器endpoint发布请求。 从我调用上述endpoint的位置发送代码 我得到以下错误,不知道原因: 已经四处寻找了一段时间,没有解决方案。

  • 我试图上传大文件使用Spring和普通话MultipartResolver(与此相关主题非常相似的东西 上传一个小文件(几Kb)的结果如下: 这是我的UploadController.java"/上传"方法代码: 我的表单代码: 以及注释bean定义: 和应用。特性: 我在表单输入中有一个正确的属性名“file”和值,我还在注释中编写了一个MediaType,但它仍然无法工作。另外,我注意到,当我

  • 我试着这样做: ...然后像这样: 无关紧要。结果总是相同的“multipartrequest:Required MultipartFile参数'file'is not present”-服务器响应。 我会认为Spring在服务器上的工作不是很好,但是我在Swift(iOS)上做了等价的代码,它工作了!服务器在这里看到这个“文件”部分。 现在我希望它能在Android系统上安装。但是我甚至查看了修

  • 我想通过邮递员上传一个图像到我的Rest API。我使用的是Spring Boot框架。以下是屏幕截图: 我也没有设置任何头部,因为我在其他堆栈溢出答案中发现,它给出了多部分边界错误。 下面是我的控制器代码: 现在,我将使用一个产品对象,该对象内部包含一个定义为Byte[]数组的图像。我把它作为字符串和图像分开作为多部分文件。 下面是我定义的产品类属性: 因为,我使用的是spring boot,这