我需要将大量数据传递给控制器。我使用过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
但它没有传递给控制器。它显示数据太长。我怎么能摆脱这个?
答案 0 :(得分:1)
通过将数据作为参数传递给send
:
xmlhttp.open("POST", "/Home/Content", true);
xmlhttp.send("content=" + data);
然后,在服务器上,读取POST数据的content
参数。