使用Vert.x后端模拟通过Postman上传文件

使用Vert.x后端模拟通过Postman上传文件,post,postman,vert.x,Post,Postman,Vert.x,我正在vert.x中开发后端,并尝试在Postman中模拟一些东西,以使我的生活更轻松 从以下HTML表单: <form method="post" enctype="multipart/form-data"> <input id="fileSelect" type="file" name="file" accept=".csv"> <input type="submit"> </form> 我正在将文件上传到vert.x。在

我正在vert.x中开发后端,并尝试在Postman中模拟一些东西,以使我的生活更轻松

从以下HTML表单:

<form method="post" enctype="multipart/form-data">
    <input id="fileSelect" type="file" name="file" accept=".csv">
    <input type="submit">
</form>

我正在将文件上传到vert.x。在服务器端,我正在Java代码中执行以下检查,以确保POST有效:

String contentType = req.getHeader(HttpHeaders.CONTENT_TYPE);
boolean isMultipart = contentType != null && contentType.contains("multipart/form-data");
Set<FileUpload> uploads = context.fileUploads();
if (uploads.size() == 1 && (isMultipart)) {
// Do the processing    
}
String contentType=req.getHeader(HttpHeaders.CONTENT\u类型);
布尔isMultipart=contentType!=null&&contentType.contains(“多部分/表单数据”);
设置uploads=context.fileUploads();
if(uploads.size()==1&&(isMultipart)){
//处理
}
如果我在浏览器中执行此操作,一切正常。如果我试图通过邮递员模拟它,
上传。size
始终等于0

我当前针对此特定请求的邮递员配置为:

  • 标题
    内容类型
    设置为
    多部分/表单数据
  • 正文为
    表单数据
    ,将
    设置为
    文件
    类型从下拉列表设置为
    文件
    ,并选择相应的CSV文件路径
问题的根源是vert.x如何通过
POST
处理文件上传,还是Postman无法完全模仿浏览器行为


一如既往地感谢您的帮助

如果有人会因为类似的问题而争吵,那么在邮递员中清除所有
标题就可以工作了,也就是说,我不再设置
内容类型
,这似乎有点奇怪。。。
无论如何,它是有效的,我希望有一天它会帮助别人。

当您指定内容类型multipart时,您应该通过调用'request.expectMultipart(true)'指示vertx正确处理它,这样多部分解析器将解析主体。然后可以为上传和与正文解析相关的事件设置处理程序