ajax post有大小限制吗?

11

我通过Ajax将ckeditor内容发布到php。但是在我的数据库表中只得到了4-5句发布的材料。我想知道,Ajax发布是否有大小限制?有没有办法通过Ajax发布大文本内容?

我的js代码如下

function postViaAjax(autosaveMode) {
    var name = $("#name").val();
    var title = $("#title").val();
    var menu = $("#menu").val();
    var parentcheck = $(".parentcheck:checked").val();
    var id = $("#id").val();
    if (parentcheck == 0) {
        var parent = parentcheck;
    } else {
        var parent = $("#parent").val();
    }
    var content = CKEDITOR.instances['content'].getData();
    var dataString = 'name=' + name + '&title=' + title + '&menu=' + menu + '&parentcheck=' + parentcheck + '&id=' + id + '&parent=' + parent + '&content=' + content;
    $.ajax({
        type: "POST",
        url: "processor/dbadd.php",
        data: dataString,
        dataType: "json",
        success: function (result, status, xResponse) {
            var message = result.msg;
            var err = result.err;
            var now = new Date();
            if (message != null) {
                if (autosaveMode) {
                    $('#submit_btn').attr({
                        'value': 'Yadda saxlanıldı ' + now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds()
                    });
                } else {
                    $.notifyBar({
                        cls: "success",
                        html: message + ' ' + now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds()
                    });
                }
            }
            if (err != null) {
                $.notifyBar({
                    cls: "error",
                    html: err
                });
            }
        }
    });
};

1
你确定不需要使用 encodeURIComponent() 对你的帖子参数进行编码吗? - Andrew D.
4个回答

11
HTTP规范对POST请求的大小没有具体限制。通常,POST请求的大小会受到Web服务器或处理表单提交的编程技术的限制。
您使用什么类型的服务器? 本地

Linux Web主机。问题是,我通过Firebug看到了帖子结果。Ajax发布确切的数据,我不知道为什么,但我在我的数据库表中得到了4-5句大文本材料。我的数据库字段类型是0大小的文本。 - The Coder
你在服务器上使用什么编程语言? - yoprogramo

5
HTTP中POST请求没有大小限制。
如果你的内容变量中有&,那么该符号之后的内容都会被截断。
除此之外,你在数据库中使用的数据列类型是什么?是类似于varchar(1000)这样的吗?那么超过1000字节的内容也会被截断。
检查一下服务器端实际接收到的内容,这样你就能知道问题出在代码还是数据库上了。

是的,可能会有像这样的符号&和.。如何通过ajax获取完整的文本? - The Coder
以下是一些可能的答案:https://dev59.com/Y3E95IYBdhLWcg3wm_Qu - kufi

2

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接