如何在纯Javascript XMLHttpRequest中发送JSON参数?

如何在纯Javascript XMLHttpRequest中发送JSON参数?,javascript,jquery,json,Javascript,Jquery,Json,我如何用纯javascript编写下面的代码 jQuery.post('/cart/add.js', { quantity: 1, id: 26449060865 }, { quantity: 2, id: 26449101569 }, { quantity: 3, id: 26449251265 }, null, "json" ); 但我建议你去拿 如果您想使用XMLHttpRequest,那么下面是代码 const theUrl = "/cart/add

我如何用纯javascript编写下面的代码

jQuery.post('/cart/add.js', 
  { quantity: 1,  id: 26449060865  },
  { quantity: 2,  id: 26449101569 },
  { quantity: 3, id: 26449251265  },
   null,
   "json"
 );

但我建议你去拿

如果您想使用XMLHttpRequest,那么下面是代码

const theUrl = "/cart/add";
xmlhttp.open("POST", theUrl);
xmlhttp.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xmlhttp.send(JSON.stringify(
  { quantity: 1,  id: 26449060865  },
  { quantity: 2,  id: 26449101569 },
  { quantity: 3, id: 26449251265  }
)); ```

这将发送application/x-www-form-urlencoded数据,而不是JSON数据。这不是有效的jQuery调用。你的意思是把所有的对象放在一个数组中吗?空参数是用来做什么的?如果你不需要回调,就忽略这个参数。jQuery通过检查数据类型来确定指定了哪些参数。可能是有用的读物。另外,其他的评论是正确的,你上面的代码是无效的,即使它是有效的,它也不会以JSON格式发送数据。你是否运行了JSON.stringify{quantity:1,id:26449060865},{quantity:2,id:26449101569},{quantity:3,id:2644951265}看看会发生什么?他说他的身体是那样的,但我认为如果你把这些物体放在物体里面,它就会起作用。他的身体不可能是那样的。它不是有效的JSON,也不是一个有效的单一对象。就像我说的,在回答之前你自己试过了吗?发布一个可能不会产生JavaScript错误的答案是有意义的