2017-02-20 40 views
0

我試圖將數據從應用程序上傳到Spring後端服務。 要上傳的內容是一個DataModel,其中包含要創建的對象的數據以及鏈接到數據的多個圖像。 所以我使用這個方法的簽名:帶@RequestBody的Spring多部分文件

@RequestMapping(method = RequestMethod.POST) 
@ResponseBody 
public Survey createSurvey(@RequestBody SurveyPostHelper helper, @RequestParam(value="file", required = true) MultipartFile[] images) 

我試圖與註釋玩,但無論我得到了一個空白圖像陣列或我的幫助是空的。 你會如何解決這個問題?

在此先感謝。

+1

你能提供一個用於上傳圖片的代碼嗎? – pezetem

+0

我用阿拉莫菲爾做到了這一點,但我解決了它的意思。感謝您的時間 –

回答

0

我發現,這種方法的簽名可以做的工作:

@ResponseBody 
public Survey createSurvey(@RequestPart(required=true) SurveyPostHelper helper, @RequestPart(value="file", required = true) final MultipartFile[] images) 

重要的,我的情況是將mimeType在客戶端應用程序。文件MimeType應該是image/jpgSurveyPostHelper s到application/json以允許Spring解析json並將其綁定到我的Object。

+0

您能否請您展示您的客戶端應用程序?你用ajax發送了嗎? – kavain

+0

我使用Alamofire庫從iOS應用程序發送。它使用多部分POST請求來上傳multipe圖像和JSON對象。這也應該可以通過AJAX來實現。 –

0

看到客戶端的代碼爲我工作的圖像的一個例子是我要救

VAR FORMDATA =新FORMDATA()的文件列表;

for (var i = 0; i < images.length ; i++) { 
    formData.append('images', images[i]); 
} 

formData.append('adData', new Blob([JSON.stringify(adData)], { 
    type: "application/json" 
})); 
相關問題