1
下面我有此控制器:如何使用Spring獲取1個請求中的多部分文件和表單數據?
@RequestMapping(value="/upload", method=RequestMethod.PUT)
public ResponseEntity<String> handleFileUpload(
@RequestParam("file") MultipartFile file,
@RequestBody Campaign inputCampaign,
Principal principal) {
每當我沒有做的@RequestBody Campaign inputCampaign
,這是對用戶的視頻保存數據的對象,並且將視頻上傳並保存到正確的目錄,它工作正常。
不過,我想趁自己上傳的文件,並與他們的競選1個請求,這樣的方式我能救他們的活動的相關信息相關聯的表格數據(如標題,描述,等...) 。
當我嘗試使用上面的控制器,並試圖發送的郵差的請求,我得到下面這個錯誤:
"timestamp": 1473349676109,
"status": 415,
"error": "Unsupported Media Type",
"exception": "org.springframework.web.HttpMediaTypeNotSupportedException",
"message": "Content type 'multipart/form-data;boundary=----WebKitFormBoundaryTVc9eDC2a2elulOx;charset=UTF-8' not supported",
"path": "/dashboard/upload"
這是我的郵差請求設置:
如何在一個請求中發送活動表單數據和文件?該活動對象有許多領域,所以我不希望有投入控制器參數@RequestParam
對每個表單字段。傑克遜應該自動映射屬性。
什麼類型的文件是你想發送到該RequestMapping? – px06
@ px06目前允許發送jpg,png和mp4。當我拿出'@RequestBody活動inputCampaign',但我希望能夠與它會自動映射到'Campaign'對象的文件接收表單數據,他們所有的工作(Spring的傑克遜庫中自動執行此操作) –