【问题标题】:Array of JSON in @RequestParam in Spring MVCSpring MVC 中 @RequestParam 中的 JSON 数组
【发布时间】:2017-01-09 01:47:59
【问题描述】:

我将以下 JSON 发送到控制器并尝试访问它,但我收到“客户端发送的请求在语法上不正确”。错误信息。

JSON:

{
"employees": [
{
    "firstName": "John",
    "lastName": "Doe"
},
{
    "firstName": "Anna",
    "lastName": "Smith"
},
{
    "firstName": "Peter",
    "lastName": "Jones"
}
]}

控制器:

@RequestMapping(value="/xyz",produces="application/json",consumes="application/json",method=RequestMethod.POST)
public String sendEmpDetails(@RequestBody List<Employee> employeeList){
    return "xyz";
}

我在这里做错了什么?

【问题讨论】:

标签: json spring


【解决方案1】:

你正在使用一个复杂的对象,但只需要一个 List 数组,所以像这样构建你的 JSON:

    var items = [];
    {
        var item = {};
        item ["firstName"] = "John";
        item ["lastName"] = "Doe";
        items.push(item);
    }
    {
        var item = {};
        item ["firstName"] = "Anna";
        item ["lastName"] = "Smith";
        items.push(item);
    }
    {
        var item = {};
        item ["firstName"] = "Peter";
        item ["lastName"] = "Jones";
        items.push(item);
    }
    $.ajax({
        url: '/myurl',
        data: JSON.stringify(items),
        type: 'POST',
        dataType: 'json',
        contentType: "application/json; charset=utf-8",
        success: function (response) {
            alert(response);
        },
        error: function (xhr, status, errorThrown) {
            alert(errorThrown);
        }
    }

【讨论】:

    猜你喜欢
    • 2014-04-17
    • 1970-01-01
    • 2016-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-25
    相关资源
    最近更新 更多