springMVC接收ajax傳的數組

springMVC接收前端ajax傳的數組

在傳遞的過程中,直接使用@RequestParam接收,發現400錯誤
首先是ajax如下:
其中的參數都是數組

// 請求後臺設置域名
        $.ajax({
            url: basePath + '/modify_server_domain',
            type: 'post',
            data: {
                appId: appId,
                requestdomainList: requestDomainList,
                wsrequestdomainList: socketDomainList,
                uploaddomainList: uploadFileDomainList,
                downloaddomainList: downloadFileDomainList
            },
         	dataType: 'json',
            success: function (res) {
               console.log(res)
            }
        });

後端的代碼如下:
@RequestMapping("/modify_server_domain")
public R modifyServerDomain(@RequestParam(“appId”) String appId, @RequestParam(“requestdomainList”) List requestdomainList,
@RequestParam(“wsrequestdomainList”) List wsrequestdomainList,
@RequestParam(“uploaddomainList”) List uploaddomainList,
@RequestParam(“downloaddomainList”) List downloaddomainList){
try {
WxOpenMaDomainResult mpServerDomain = weChatOpenService.modifyServerDomain(appId, requestdomainList,
wsrequestdomainList, uploaddomainList, downloaddomainList);
return R.ok(mpServerDomain);
} catch (ApiException ae) {
return R.failed(ae.getMessage());
} catch (Exception e) {
return R.failed(ResponseMessage.ERROR);
}
}

最後發現,直接寫參數名是不能接收的,解決辦法就是加上[]
即:
@RequestMapping("/modify_server_domain")
public R modifyServerDomain(@RequestParam(“appId”) String appId, @RequestParam(“requestdomainList[]”) List requestdomainList,
@RequestParam(“wsrequestdomainList[]”) List wsrequestdomainList,
@RequestParam(“uploaddomainList[]”) List uploaddomainList,
@RequestParam(“downloaddomainList[]”) List downloaddomainList){
try {
WxOpenMaDomainResult mpServerDomain = weChatOpenService.modifyServerDomain(appId, requestdomainList,
wsrequestdomainList, uploaddomainList, downloaddomainList);
return R.ok(mpServerDomain);
} catch (ApiException ae) {
return R.failed(ae.getMessage());
} catch (Exception e) {
return R.failed(ResponseMessage.ERROR);
}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章