Как загрузить несколько файлов с одинаковым именем параметра - PullRequest
0 голосов
/ 25 января 2019

Я ищу решение для создания Spring Cloud Contract для следующих сервисов отдыха, оно позволяет загружать несколько файлов с одинаковым именем параметра:

    @PostMapping(value = "/uploadFiles")
    public ResponseEntity uploadFiles(@RequestParam("files") MultipartFile[] files) {
        // some code...
    }

Я пробовал следующее решение, но ононе работает

org.springframework.cloud.contract.spec.Contract.make {
    request {
        method 'POST'
        url $(c('/uploadFiles'))
        headers {
            header 'Content-Type': $(c(regex('application/json.*')), p('application/json;charset=UTF-8'))
        }
        multipart(
            files: [
                named(
                    name: $(c(regex(nonEmpty())), p('file1.bin')),
                    content: $(c(regex(nonEmpty())), p('BINARY DATA')),
                    contentType: $(c(regex(nonEmpty())), p('application/octet-stream')),
                ),
                named(
                    name: $(c(regex(nonEmpty())), p('file2.bin')),
                    content: $(c(regex(nonEmpty())), p('BINARY DATA')),
                    contentType: $(c(regex(nonEmpty())), p('application/octet-stream')),
                )
            ]
        )
    }
    response {
        status OK()
    }
}

Я думаю, что Spring Cloud Contract не позволяет отправлять несколько значений с одним и тем же именем параметра запроса!Что ты думаешь?

...