swagger多文件上传问题--Current request is not a multipart request

    @ApiOperation(value = "附件的邮件", notes = "附件的邮件", httpMethod = "POST")
    @RequestMapping(value = "/send", method = RequestMethod.POST, headers = "content-type=multipart/form-data")
    public Map sendMail(
            @ApiParam(value = "收件人", required = true)
            @RequestParam("toMail")
            @Size(min = 1, max = 255, message = "收件人不能超过255个字符")
            @Pattern(regexp = "^(\\w+@\\w+\\.\\w+)(,\\w+@\\w+\\.\\w+)*$", message = "收件人邮箱不正确")
            @NotNull(message = "收件人不能为空")
                    String toMail,

            @ApiParam(value = "文件", required = true)
            @RequestParam(value = "multipartFile")
                    MultipartFile[] multipartFile) {
        List bytes = new ArrayList<>();
        List fileNames = new ArrayList<>();
        try {
            for (MultipartFile mu : multipartFile
            ) {
                bytes.add(mu.getBytes());
                fileNames.add(mu.getOriginalFilename());
            }
            mailService.sendMail(toMail, bytes);
        } catch (IOException e) {
            e.printStackTrace();
        }
    ....
}

重点:headers = "content-type=multipart/form-data"

如果不要headers,用postman可以提交多文件,但用swagger就不行。

你可能感兴趣的:(swagger)