jquery错误将字符串数组发送到Spring应用程序

时间:2016-06-15 20:21:24

标签: java jquery json spring spring-mvc

我正在尝试将一个字符串数组发送到java / spring后端解决方案,在尝试以多种方式执行此操作后,我放弃了因为我总是有错误(格式错误的请求,缺少正文......)

我很惊讶因为许多例子没有成功。我确定问题出在jquery方面,因为我将方法更改为GET,以便尽可能清楚地看到请求,并且我看到数据未按预期显示。

这是功能:

function duplicateSection() {

    var table = document.getElementById("tbody");
    var ids = [];
    var i = 0;
    var totalRows = table.rows.length;

    for(i; i < totalRows; i++){

        var checkbox = table.rows[i].cells[0].children[0];

        if(checkbox.checked){
            var id = table.rows[i].cells[1].children[0].value;
            ids.push(id);
        }
    }

    var jsonString = JSON.stringify(ids);
    alert(jsonString);

    $.ajax({
        url: './duplicatesections',
        type: 'GET',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        data: jsonString,
        success: function(data) {

            alert('sent');
        }
    });
}

当我用警告显示JSON字符串时,我得到了预期的结果:[&#34; 1&#34;]

发送请求后,我得到另一个结果:http://localhost:8080/duplicatesections?[%221%22]

为什么我有此表示?:[%221%22]

作为额外信息,我使用弹簧靴和百里香叶以防万一。

1 个答案:

答案 0 :(得分:0)

发送POST请求。

$.ajax({ url: './duplicatesections', type: 'POST', contentType: "application/json; charset=utf-8", dataType: "json", data: jsonString, success: function(data) { alert('sent'); } });