V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ohmyga
V2EX  ›  PHP

html 表单的 name 值都是随机的 刷新一次变一次,这是怎么个原理 ?

  •  
  •   ohmyga · 2014-03-16 22:20:02 +08:00 · 4532 次点击
    这是一个创建于 3901 天前的主题,其中的信息可能已经有所发展或是发生改变。
    整个页面所有的name值都是随机的。。
    <input type="text" value = "" name="X1FMHAUPO0pVRWdADVc=" id="s1" />
    <input type="text" value = "" name="X1FMHAUPO0pVRWdYAVVUFl1U" id="s2" />
    <input type="text" value = "" name="X1FMHAUPO0pVRWdZF0dY" id="s3" />
    14 条回复    1970-01-01 08:00:00 +08:00
    zkd8907
        1
    zkd8907  
       2014-03-16 22:26:37 +08:00
    应该是后台随机的吧,防止自动程序伪造Post提交?我猜的。
    worldask
        2
    worldask  
       2014-03-16 23:25:26 +08:00   ❤️ 1
    是用.Net控件生成的吗?
    aisk
        3
    aisk  
       2014-03-16 23:31:56 +08:00
    asp.net的view state
    qianlifeng
        4
    qianlifeng  
       2014-03-16 23:31:59 +08:00 via Android
    @worldask 应该不是,.net生成的不是这种格式
    cevincheung
        5
    cevincheung  
       2014-03-16 23:43:34 +08:00
    cookie也贴上来看看
    Xrong
        6
    Xrong  
       2014-03-16 23:44:00 +08:00
    有意思,第一次见到这种的...
    YouXia
        7
    YouXia  
       2014-03-16 23:46:36 +08:00
    V2EX 登录页面与此相似,有个once值也是每次登录值都不相同。
    jakwings
        8
    jakwings  
       2014-03-16 23:57:20 +08:00
    估计是用来避免缓存,顺便验证合法性的,看看 server header 还有没有相关的用于校验的字串。
    Mcatt
        9
    Mcatt  
       2014-03-17 00:05:17 +08:00
    避免缓存,否则同一个name值的话,浏览器会根据name值查找缓存自动填充表单
    Micky
        10
    Micky  
       2014-03-17 09:06:19 +08:00
    csrf token吧
    后端用foreach查找“X1FMHAUPO0pVRWd*”来接收吧,猜的
    coosir
        11
    coosir  
       2014-03-17 09:29:06 +08:00
    防恶意填表/注册,各种后端语言都能实现吧。另外据说还有专门的设备来干这个事情,减小主服务器压力。
    ohmyga
        12
    ohmyga  
    OP
       2014-03-17 13:56:44 +08:00
    这个程序是php写的,更有意思的是 js方法名 变量名 也是刷新就变的
    http://www.weixinguanjia.cn/ 就是这个站上的。
    ohmyga
        13
    ohmyga  
    OP
       2014-03-17 14:01:59 +08:00
    <form action="" method="post" class="form-horizontal form-validate"><input type="hidden" value="53268f78ad91f" name="YYUC_FORM_TOKEN"/><input type="hidden" value = "" name="Cw1QEFo9UwpQXUlHaUldQVlYTlwwCgA=" id="micro_jiaoyu_zhuanyeid" /> <div class="control-group">
    <label for="title" class="control-label">专业名称:</label>
    <div class="controls">
    <input type="text" value="" name="Cw1QEFo9UwpQXUlHaUldQVlYTlwwDQVZAw==" id="micro_jiaoyu_zhuanyename" class="input-large" required="required"/> <span class="maroon">*</span>
    <span class="help-inline">尽量简单,不要超过20字</span>
    </div>
    </div>
    <div class="control-group">
    <label for="brands" class="control-label">校区/系别:</label>
    <div class="controls">
    <select seluuid="53268f78ada33" selindex="0" name="Cw1QEFo9UwpQXUlHaUldQVlYTlwwExRdAg==" id="micro_jiaoyu_zhuanyeppid" onchange="YYUC_getnextsel(this,'VVpQQVtrDlwEXk1GbRwIWlsA','GFJdVxRDDVFYFgUAAldYHxIKFFRXFxFRSRFHWEUXRVxdQFA=')" onblur="YYUC_getnextsel(this,'VVpQQVtrDlwEXk1GbRwIWlsA','GFJdVxRDDVFYFgUAAldYHxIKFFRXFxFRSRFHWEUXRVxdQFA=')" yy_autotext="Cw1QEFo9UwpQXUlHaUldQVlYTlwwMCF4OWVtZztFRw0C"><option value="" >--请选择--</option></select><select seluuid="53268f78ada33" selindex="1" name="Cw1QEFo9UwpQXUlHaUldQVlYTlwwEw1Q" id="micro_jiaoyu_zhuanyepid" yy_autotext="Cw1QEFo9UwpQXUlHaUldQVlYTlwwMCF4OWVtZztFXgA="><option value="" >--请选择--</option></select>
    </div>
    </div>
    <div class="control-group">
    <label for="sort" class="control-label">显示顺序:</label>
    <div class="controls">
    <input type="text" value="0" name="Cw1QEFo9UwpQXUlHaUldQVlYTlwwEAtGEg==" id="micro_jiaoyu_zhuanyesort" class="input-mini"/> <span class="maroon">*</span>
    <span class="help-inline">数值越大越靠前</span>
    </div>
    </div>
    <div class="control-group">
    <label for="description" class="control-label">专业介绍:</label>
    <div class="controls">
    <textarea name="Cw1QEFo9UwpQXUlHaUldQVlYTlwwCQ1VCFtcVg==" id="micro_jiaoyu_zhuanyejianjie" class="input-xxlarge" style="height:80px;width:380px;" placeholder="可不填"></textarea> </div>
    </div>
    <div class="form-actions">
    <button type="submit" id="bsubmit" data-loading-text="提交中..." class="btn btn-primary">保存</button>
    <button type="button" class="btn" onclick="window.history.go(-1);">取消</button>
    </div>
    </form>
    konakona
        14
    konakona  
       2014-04-03 02:44:35 +08:00
    其实携程or去哪儿的list就是这样的……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1232 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:25 · PVG 07:25 · LAX 15:25 · JFK 18:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.