我正在vert.x的後端工作,並嘗試模擬Postman中的幾件事情,使我的生活更輕鬆。通過郵遞員模擬文件上傳與Vert.x後端
從下面的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
}
如果我執行這個來自瀏覽器,一切工作正常。如果我試圖通過郵遞員嘲笑它,uploads.size
總是等於0
我現在的郵遞員配置這個具體要求是:
- 頭
Content-Type
設置爲multipart/form-data
- 身體作爲
form-data
,與key
設置爲file
,value
類型設置爲file
從下拉列表中選擇相應的CSV文件路徑。
問題根源在於vert.x如何通過POST
來處理文件上傳,還是郵差無法完全模仿瀏覽器行爲?
謝謝你一如既往的幫助!