gpt4 book ai didi

java - 如何在 jQuery ajax 调用中接受 Spring MVC Controller 中的 JavaScript 数组参数?

转载 作者:行者123 更新时间:2023-12-01 18:54:26 25 4
gpt4 key购买 nike

我有一个像这样的 jQuery ajax 调用:

var arr = ["a", "b", "c"];
$.get("/test", {testArray: arr}, function(data) {
alert(data);
});

服务器端:

@RequestMapping(value = "/test", method = RequestMethod.GET)
public String addAnotherAppointment(
HttpServletRequest request,
HttpServletResponse response,
@RequestParam("arr") arr,
Model model,
BindingResult errors) {
}

那么如何接收参数呢?

谢谢。

最佳答案

如果你使用spring 3.0++,请使用“@ResponseBody”注解。

您想发送 json 请求并接收 json 响应吗?如果是这样,您将像这样更改代码。

var list = {testArray:["a", "b", "c"]};
$.ajax({
url : '/test',
data : $.toJSON(list),
type : 'POST', //<== not 'GET',
contentType : "application/json; charset=utf-8",
dataType : 'json',
error : function() {
console.log("error");
},
success : function(arr) {
console.log(arr.testArray);
var testArray = arr.testArray;
$.each(function(i,e) {
document.writeln(e);
});
}
});

服务器端:

  1. 创建您自己的“Arr”类。

    public class Arr {
    private List<String> testArray;
    public void setTestArray(List<String> testArray) {
    this.testArray = testArray;
    }
    public List<String> getTestArray() {
    return testArray;
    }
    }

    @RequestMapping(value = "/test", method = RequestMethod.POST)
    @ResponseBody// <== this annotation will bind Arr class and convert to json response.
    public Arr addAnotherAppointment(
    HttpServletRequest request,
    HttpServletResponse response,
    @RequestBody Arr arr,
    Model model,
    BindingResult errors) {
    return arr;
    }

关于java - 如何在 jQuery ajax 调用中接受 Spring MVC Controller 中的 JavaScript 数组参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14574639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com