我正在使用vertx-web
并尝试上传文件。这是我的代码:
router.route().handler(BodyHandler.create().setUploadsDirectory("some/path/uploads"));
router.post("/api/upload").handler(routingContext -> {
for(FileUpload f : routingContext.fileUploads()){
System.out.println(f.fileName()); // logo.png
}
routingContext.response().end()
});
以上代码,将文件上传到指定路径,但缺少上传的文件扩展名。
文件上传名称:logo.png
文件保存名称:45edd7b4-5287-4fba-927e-f256f4b09aea
我希望上传的文件扩展名和内容类型保持原样。
答案 0 :(得分:1)
您无法配置BodyHandler
来执行此操作。它使用唯一标识符的原因是为了避免名称冲突。
您可以使用正确的名称将文件移动到另一个目录。