【问题标题】:Strange Put Json form data (Jquery Ajax)奇怪的Put Json表单数据(Jquery Ajax)
【发布时间】:2016-09-23 22:37:10
【问题描述】:

我正在尝试使用 JQUERY AJAX 执行 PUT 请求,其中包含一个对象,其中包含其他对象,代码如下:

var dataSend = {field1: 'this', field2:'thisone'};
var insideData = {name: 'myName', age:'18'};

data.inside = insideData;

$.ajax({
  url: "http://localhost:8888/api/datas",
  type: "PUT",
  data: dataSend,
  success: function (data, textStatus, jqXHR) {....

我只是在等待服务器端 (Node.js) 中的数据,例如:

{
    field1: 'this', 
    field2:'thisone',
    inside: {name: 'myName', age:'18'}
}

但相反,我收到了:

{
    field1: 'this', 
    field2:'thisone',
    'inside[name]': 'myName',
    'inside[age]': '18'
}

那么,我做错了什么? 如何获取 insideData 以在我的服务器端使用?

【问题讨论】:

    标签: javascript jquery json ajax node.js


    【解决方案1】:

    为什么不直接做:

    var dataSend = {field1: 'this', field2:'thisone','inside':{name: 'myName', age:'18'}};
    

    或:

    var insideData = {name: 'myName', age:'18'};
    var dataSend = {field1: 'this', field2:'thisone','inside':insideData};
    

    【讨论】:

    • 我试了一下,结果一样。
    • 然后使用 JSON.stringify() 将其转换为正确的 json
    • 我试了,但数据最奇怪,它发送一个 ['jsonString', '']
    猜你喜欢
    • 2014-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-25
    • 1970-01-01
    • 2015-08-21
    • 2010-11-15
    • 1970-01-01
    相关资源
    最近更新 更多