如何使用XmlHttpRequest通过ajax调用传递大量数据

时间:2013-05-08 13:39:40

标签: jquery ajax xmlhttprequest

我需要将大量数据传递给控制器​​。我使用过XmlHttpRequest。 我编写的代码如下:

var xmlhttp;
if (window.XMLHttpRequest) {
    xmlhttp = new XMLHttpRequest();
}
else {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
 }
 xmlhttp.onreadystatechange = function () {
 if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
      document.getElementById("myDiv").innerHTML = xmlhttp.responseText;
 }
}
xmlhttp.open("POST", "/Home/Content", true);
xmlhttp.send("content=" + data);

ActionResult看起来像

[HttpPost]
public ActionResult(string content)
{
      return Json("suc", JsonRequestBehavior.AllowGet);
}

数据就像

 UklGRipkAABXRUJQVlA4[...huge piece of data...]kxgTrTkKyKe6xap+GYnY93Kj

但它没有传递给控制器​​。它显示数据太长。我怎么能摆脱这个?

1 个答案:

答案 0 :(得分:1)

通过将数据作为参数传递给send

,在POST正文中发送数据
xmlhttp.open("POST", "/Home/Content", true);
xmlhttp.send("content=" + data);

然后,在服务器上,读取POST数据的content参数。