Ajax POST 302:变量超过1MB,由Controller进行302重定向

时间:2017-04-12 06:52:34

标签: javascript java jquery ajax spring-mvc

需要从前端向我的spring mvc控制器发送更新的html 。如果我的文件大小超过1MB ,那么控制器会让我回到 302重定向进行ajax调用

以下代码包含以下问题:

var allHtmlContent = document.getElementById('#iframeId').contentDocument.body.innerHTML;
    $.ajax({
        url : context + "/someControllerMethod",
        cache : false,
        type : 'POST',
        data : {
            htmlText : encodeURIComponent(allHtmlContent)
        },
        dataType : "text",
        success : function(b) {

        },
        error: function() {
           }
    }); 

此处 allHtmlContent 变量包含iFrame中的所有HTML。如果iFrame由文件加载超过1mb大小我得到控制器重定向302所以ajax在浏览器网络中显示该错误。

有没有办法解决这个问题,以便我可以POST大小超过1mb的大小。

先谢谢

2 个答案:

答案 0 :(得分:1)

在nginx.conf文件中,将client_max_body_size设置为20MB(您的选择),这意味着当我们执行AJAX时,请求对象可以容纳大量数据。

答案 1 :(得分:0)

我认为此问题与请求的最大大小有关。

您可以在web.config下面尝试以下代码来设置请​​求的最大大小。

<system.webServer>
<security>
    <requestFiltering>
        <requestLimits maxAllowedContentLength="1000000" />
    </requestFiltering>
</security>

<requestLimits>元素指定Web服务器处理的HTTP请求的限制。这些限制包括请求的最大大小