Конечная точка загрузки файла - sam local (без сервера) MultipartException: текущий запрос не является составным запросом - PullRequest
0 голосов
/ 26 октября 2018

Я пытаюсь написать простую лямбда-функцию (aws без сервера) с конечной точкой / upload - чтобы разрешить загрузку файлов.

Я использую Spring-Boot в качестве технологии.

Код контроллераБлок выглядит следующим образом:

@PostMapping("/upload")
public void upload(@RequestParam MultipartFile file) {
    LOGGER.debug("File: " + file.getOriginalFilename() + " Size: " + file.getSize());
}

Он отлично работает, когда я запускаю его как приложение с весенней загрузкой и запускаю запрос почтальона.

Теперь, чтобы проверить его дальше - я запускаю его sam local start-api

И когда я пытаюсь использовать почтальон (http://127.0.0.1:3000/upload), он застревает в следующем исключении:

org.springframework.web.multipart.MultipartException: Current request is not a multipart request

Как часть моего поиска решения - я наткнулся на несколько статейкоторый говорит - Amazon API Gateway не поддерживает multipart / form-data. Я предполагаю, что это является причиной проблемы.

https://forums.aws.amazon.com/thread.jspa?threadID=252327 AWS API Gateway: поддержка данных формы

Теперь я хотел бы знать, какие есть альтернативы, чтобы сделать его максимально простым. Я тоже сталкивался (еще не пробовал)

https://github.com/myshenin/aws-lambda-multipart-parser

Мой конеццель состоит в том, чтобы получить файл и еще несколько параметров через одну конечную точку и обработать его.

...