Javascript 通过JSON.stringify()将数组传递给服务器并得到奇怪的结果
我正在node.js、express.js和mongodb上开发一个应用程序。我的任务是将数组传递到服务器端并将其插入数据库。我搜索了整个web,发现我需要通过JSON.stringify()对数组进行字符串化,但当我在服务器端对其进行控制台处理时,它看起来很奇怪,每次尝试使用JSON.parse()都会以错误告终。 下面是通过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","
{ '[{"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)})代码>您试图如何解析它?第一种方法也是正确的,只是需要更改获取数据的方式,但第二种方法通常是如何完成的。第一种方法也是正确的,只是需要更改获取数据的方式,但第二种方法通常是如何完成的。