使用Vert.x后端模拟通过Postman上传文件
我正在vert.x中开发后端,并尝试在Postman中模拟一些东西,以使我的生活更轻松 从以下HTML表单:使用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。在
<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文件路径文件
POST
处理文件上传,还是Postman无法完全模仿浏览器行为
一如既往地感谢您的帮助 如果有人会因为类似的问题而争吵,那么在邮递员中清除所有
标题就可以工作了,也就是说,我不再设置内容类型
,这似乎有点奇怪。。。
无论如何,它是有效的,我希望有一天它会帮助别人。当您指定内容类型multipart时,您应该通过调用'request.expectMultipart(true)'指示vertx正确处理它,这样多部分解析器将解析主体。然后可以为上传和与正文解析相关的事件设置处理程序