V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
daben1990

form 提交表单,内容为大量中文( 5 万字以上),有时候会出现内容不全的情况

  •  
  •   daben1990 · Apr 17, 2015 · 2943 views
    This topic created in 4038 days ago, the information mentioned may be changed or developed.

    $.ajax post方式提交json字符串,对中文内容做了encodeURIComponent 编码。

    后台的日志显示,有时候能够成功提交,有时候,内容会断掉,导致json串后面的其他key,无法获取。

    请问各位大神,有遇到过的吗?

    7 replies    2015-04-17 14:57:39 +08:00
    a591826944
        1
    a591826944  
       Apr 17, 2015
    你这种 情况 应该是 文章中有 & 符号 绝对的。。。
    daben1990
        2
    daben1990  
    OP
       Apr 17, 2015
    & 符号,通过encodeURIcomponent ,也是可以编码的啊。
    wesley
        3
    wesley  
       Apr 17, 2015
    看看你的服务器配置,允许的post内容最大多大
    daben1990
        4
    daben1990  
    OP
       Apr 17, 2015
    最大能到30万,而且主要是,在接受到request请求后,在日志文件中,把整个request头都打印出来,发现很多条记录的主要内容断掉了。还没到后台检查的那一步。

    主要是有时候发生,自己又不能重现。远程到客户主机上,刷新几次页面,就会出现这种情况。包括chrome浏览器
    dong3580
        5
    dong3580  
       Apr 17, 2015
    五万应该还好吧,我以前出现你这种情况,用的Oracle数据库,后来发现是数据库的问题,字段太长了。
    调试一下,看看是插入数据库之前数据被掐断还是插入数据库之后断了。
    loading
        6
    loading  
       Apr 17, 2015 via iPhone   ❤️ 1
    列出内容不全的部分,看他们长度,如果是相近的长度,可能是post大小设置或者数据库字段长度限制。

    如果是随机长度,找到最后一个字节看看。
    daben1990
        7
    daben1990  
    OP
       Apr 17, 2015
    查了三条,length值分别是39345,49592,51754, 最后一个字节都是中文。。

    在插入数据库之前,后台一收到请求,就打印日志了啊

    会不会是php默认设置有post的长度限制
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3424 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 12:14 · PVG 20:14 · LAX 05:14 · JFK 08:14
    ♥ Do have faith in what you're doing.