我想从我的angularjs客户端数据传递到服务器:
这是我的客户:
var formData = new FormData();
formData.append('voice', voice);
formData.append('isAddMode', isAddMode);
$http.put('/api/Voices/updateVoice', formData).then(
function successCallback(response) {
或:
$http.put('/api/Voices/updateVoice', {voice: voice, isAddMode : isAddMode}).then(
这是我的服务器
public void updateVoice(@FormDataParam("voice") VoiceBl voice, @FormParam("isAddMode") boolean isAddMode) throws Exception {
我应该如何修改服务器API以正确获取具有多参数的POST请求?
答案 0 :(得分:0)
您可以这样做,然后将对象强制转换为正确的类:
@POST
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
public void create(final MultivaluedMap<String, Object> formParams) {
VoiceBl voice = (VoiceBl) formParams.get("voice");
...
}
答案 1 :(得分:0)
我确信您无法接收自定义类,例如VoiceB1作为Java中HTTP服务的参数。但是,当@FrAn回答时,您可以接收MAP(基本上是以不同方式查看的JSON对象)并将其转换为您的类。有各种方法可以做到这一点。无论如何我就是这样做的。