Ajax如何将大数据发布到asp.net web表单webMethod

时间:2014-06-21 15:18:40

标签: c# jquery asp.net ajax http-post

我正在尝试使用ajax帖子将图像发送到asp.net网络表单

function SubmitFunction() {            
            alert(imgData_Based64String);
            imgData_Based64String = "test";
            $.ajax({
                type: "POST",
                contentType: "application/json; charset=utf-8",
                url: "WebForm1.aspx/SaveImage",
                data: "{ 'Based64BinaryString' :'" + imgData_Based64String + "'}",
                dataType: "json",
                success: function (data) {

                },
                error: function (result) {
                    alert("Error");
                }
            });
        }


    [System.Web.Services.WebMethod]
    public static void SaveImage(string Based64BinaryString)
    {
        string Value = Based64BinaryString;
    }

一切正常。
“test”消息到达服务器端SaveImage功能。
但是当我尝试发送实际的基于64string(删除“测试”虚拟消息后)

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10 ....

它永远不会到达服务器端的SaveImage函数。 它仅在浏览器开发者模式下显示以下错误。

Failed to load resource: the server responded with a status of 500 (Internal Server Error) 

2 个答案:

答案 0 :(得分:5)

最后,我可以在获得linkanother link的帮助后解决问题。

<configuration> 
   <system.web.extensions>
       <scripting>
           <webServices>
               <jsonSerialization maxJsonLength="50000000"/>
           </webServices>
       </scripting>
   </system.web.extensions>
</configuration> 

答案 1 :(得分:1)

如果我没弄错,ASP有限制:

http://msdn.microsoft.com/en-us/library/system.xml.xmldictionaryreaderquotas.maxstringcontentlength%28v=vs.110%29.aspx

显然你可以设置它。

不确定它是否意味着您的具体情况。但它似乎相关