小编典典

JSON格式(通过jQuery AJAX将JSON发送到Java / Wicket服务器)

ajax

我正在使用jQuery将JSON发布到Java服务器,但是我认为JSON一定是错误的。这是我的数据及其发送方式的示例:

var lookup = {
    'name': name,
    'description': description,
    'items': [{
        'name': itemName,
        'value': itemValue
    }]
}

$.ajax({
    type: 'post',
    data: lookup,
    dataType: 'json'
});

我正在使用Wicket的AbstractAjaxBehavior接收数据,并希望获得一个我可以解析的JSON字符串。当我获得传递的参数的映射时,键集如下所示:

items[0][name],
description,
name,
items[0][value],

显然,我可以轻松获取名称和描述的值,但是我的项目数组的键弄乱了。我敢肯定这很简单,但是我似乎一直在解决这个问题。有什么建议?谢谢!


阅读 231

收藏
2020-07-26

共1个答案

小编典典

您必须使用JSON.stringify:

$.ajax({
    type: 'post',
    data: JSON.stringify(lookup),
    contentType: 'application/json',
    dataType: 'json'
});

您还应该将“ application / json”指定为contentType。默认情况下,jQuery将使用application / x-www-
form-urlencoded序列化对象(即使contentType为application / json’)。因此,您必须手动进行。

编辑:“职位”的关键应该是类型,而不是方法。

2020-07-26