如何使用JavaScript在跨域POST请求中发送JSON正文?

如何使用JavaScript在跨域POST请求中发送JSON正文?,javascript,Javascript,在这个问题的基础上,是否有一种方法可以使用JSON主体来创建请求,而不是应用程序/x-www-form-urlencoded表单的name=value参数?如果您熟悉jQuery,可以使用类似的方法,并通过contentType选项指定数据是JSON: $.ajax({ url: "/your-taget.php", contentType: "application/json", data: "your JSON", success: function(data){ /

在这个问题的基础上,是否有一种方法可以使用JSON主体来创建请求,而不是
应用程序/x-www-form-urlencoded
表单的
name=value
参数?

如果您熟悉jQuery,可以使用类似的方法,并通过contentType选项指定数据是JSON:

$.ajax({
  url: "/your-taget.php",
  contentType: "application/json",
  data: "your JSON",
  success: function(data){
    // Do something here on success
  }
});
更新:


请注意,如果您正在进行跨域请求,并且打算将JSON从服务器返回到客户端,那么您需要将数据作为JSONP从服务器发送到客户端——例如,请参阅文章。否则您将与浏览器冲突。

由于浏览器的安全限制,不允许跨域ajax请求。因此,jQueryAjax方法在这种情况下没有帮助。另外,JSONP不做POST请求,也不包含请求正文中的任何数据。你是对的,当然,我的错,让我对跨域请求感到困惑的是jQuery.ajax()的跨域选项。有人能解释一下这个选择的目的吗?