I have got a multipart form with some text fields and some upload files. I need to handle this multipart post request in vertx handler so that all the uploaded files (variable number) should be read in chunks (for memory effeciency purpose). The moment I read the chunks (in foreach loop), I want to stream that out directly to the file. For multipart with text fields, I want to simply store the values to my model object.
I am quite new to vertx and therefore looking for a code snippet to achieve this but couldnt find it anywhere on the vertx documentation.
You should look at vertx-web. It contains exactly what you need:
router.route().handler(BodyHandler.create());
router.post("/some/path/uploads").handler(routingContext -> {
MultiMap attributes = routingContext.request().formAttributes();
// do something with the form data
Set<FileUpload> uploads = routingContext.fileUploads();
// Do something with uploads....
});
Hope this will help.