Javascript 通过JSON.stringify()将数组传递给服务器并得到奇怪的结果

Javascript 通过JSON.stringify()将数组传递给服务器并得到奇怪的结果,javascript,json,node.js,mongodb,express,Javascript,Json,Node.js,Mongodb,Express,我正在node.js、express.js和mongodb上开发一个应用程序。我的任务是将数组传递到服务器端并将其插入数据库。我搜索了整个web,发现我需要通过JSON.stringify()对数组进行字符串化,但当我在服务器端对其进行控制台处理时,它看起来很奇怪,每次尝试使用JSON.parse()都会以错误告终。 下面是通过JSON.stringify()传递的数组: 当我将其传递到服务器端时,它如下所示: { '[{"city":"London","date":"20.11.2015","

我正在node.js、express.js和mongodb上开发一个应用程序。我的任务是将数组传递到服务器端并将其插入数据库。我搜索了整个web,发现我需要通过JSON.stringify()对数组进行字符串化,但当我在服务器端对其进行控制台处理时,它看起来很奇怪,每次尝试使用JSON.parse()都会以错误告终。 下面是通过JSON.stringify()传递的数组:

当我将其传递到服务器端时,它如下所示:

{ '[{"city":"London","date":"20.11.2015","sector":"A","row":"1","place":"1"},{"city":"London","date":"20.11.2015","sector":"A","row":"1","place":"2"},{"city":"London","date":"20.11.2015","sector":"A","row":"2","place":"1"},{"city":"London","date":"20.11.2015","sector":"A","row":"2","place":"2"},{"city":"London","date":"20.11.2015","sector":"B","row":"1","place":"1"},{"city":"London","date":"20.11.2015","sector":"B","row":"1","place":"2"},{"city":"London","date":"20.11.2015","sector":"B","row":"2","place":"1"},{"city":"London","date":"20.11.2015","sector":"B","row":"2","place":"2"}]': ''}

任何解析它的尝试都会导致500个错误。那么我做错了什么?你看到它在做什么了吗?它使用您传递的JSON作为没有值的键

你可以这么做

$.ajax({ 
   method: "POST", 
   url: "/tickets/addticket", 
   dataType: "json",
   data : { val : JSON.stringify(dataToSend) }
}
然后node.js读取val的querystring值

另一个选项是设置内容类型

$.ajax({
    url: "/tickets/addticket", 
    type: 'POST', 
    contentType: 'application/json', 
    data: JSON.stringify(dataToSend)}
);

你看到它在做什么了吗?它使用您传递的JSON作为没有值的键

你可以这么做

$.ajax({ 
   method: "POST", 
   url: "/tickets/addticket", 
   dataType: "json",
   data : { val : JSON.stringify(dataToSend) }
}
然后node.js读取val的querystring值

另一个选项是设置内容类型

$.ajax({
    url: "/tickets/addticket", 
    type: 'POST', 
    contentType: 'application/json', 
    data: JSON.stringify(dataToSend)}
);

如何将其传递给服务器?@epascarello
$.ajax({method:“POST”,url:/tickets/addticket,dataType:“json”,data:json.stringify(dataToSend)})您如何尝试解析它?您如何将它传递到服务器?@epascarello
$.ajax({method:“POST”,url:/tickets/addticket,dataType:“json”,data:json.stringify(dataToSend)})您试图如何解析它?第一种方法也是正确的,只是需要更改获取数据的方式,但第二种方法通常是如何完成的。第一种方法也是正确的,只是需要更改获取数据的方式,但第二种方法通常是如何完成的。