ChrisTang 最近的时间轴更新
ChrisTang

ChrisTang

V2EX 第 213037 号会员,加入于 2017-02-04 01:41:45 +08:00
如何正确的保存验证码
问与答  •  ChrisTang  •  2017-02-11 20:43:11 PM  •  最后回复来自 ChrisTang
8
如何分析 js 代码的运行
  •  1   
    JavaScript  •  ChrisTang  •  2017-02-04 23:01:00 PM  •  最后回复来自 ChrisTang
    5
    ChrisTang 最近回复了
    2017-02-11 20:52:55 +08:00
    回复了 infinity1207 创建的主题 Python 用 Django 撸的第二个作品:三十撸啊撸
    宕机了?
    2017-02-11 20:43:11 +08:00
    回复了 ChrisTang 创建的主题 问与答 如何正确的保存验证码
    @shiny 感谢!直接把整个页面保存到本地再读取图片的方式确实可行。
    2017-02-11 16:56:43 +08:00
    回复了 ChrisTang 创建的主题 问与答 如何正确的保存验证码
    @shiny 小白,对验证码知之甚少,还望赐教
    2017-02-11 16:56:21 +08:00
    回复了 ChrisTang 创建的主题 问与答 如何正确的保存验证码
    @nanlong selenium 类工具可以实现截图,但这里暂不考虑这种方式。

    @popok 但通过 Charles 抓包发现, randomid 确实是需要向服务器提交的。
    2017-02-04 23:01:00 +08:00
    回复了 ChrisTang 创建的主题 JavaScript 如何分析 js 代码的运行
    @m31271n 看到了。请问这段代码中,下面两段分别什么意思呢?以及 b 赋值是什么呢?

    a = c.length ? c[0].value : d.length ? d[0].value : "";
    d = b.find("input[name\x3demail]")








    function l(b) {
    b.on("submit", function() {
    var c = b.find("#session_key-login"), d = b.find("input[name\x3demail]"), a, e, f;
    a = c.length ? c[0].value : d.length ? d[0].value : "";
    Date.now || (Date.now = function() {
    return (new Date).getTime()
    }
    );
    c = Date.now();
    d = m().join(":");
    f = a + ":" + d;
    window.jsRandomCalculator ? (e = window.jsRandomCalculator.computeJson ? window.jsRandomCalculator.computeJson({
    ts: c,
    n: d,
    email: a
    }) : window.jsRandomCalculator.compute(d, a, c),
    a = window.jsRandomCalculator.version) : a = e = "";
    g("client_ts", c, b);
    g("client_r", f, b);
    g("client_output", e, b);
    g("client_n", d, b);
    g("client_v", a, b)
    })
    }
    function m() {
    var b = [], c;
    for (c = 0; 3 > c; c++)
    b[c] = Math.floor(9E8 * Math.random()) + 1E8;
    return b
    }
    function g(b, c, d) {
    var a = $("input[name\x3d" + b + "]", d);
    a.length ? a.val(c) : (a = document.createElement("input"),
    a.setAttribute("type", "hidden"),
    a.setAttribute("name", b),
    a.setAttribute("value", c),
    d.append(a))
    2017-02-04 19:07:19 +08:00
    回复了 ChrisTang 创建的主题 JavaScript 如何分析 js 代码的运行
    @former 非常感谢,请问可有格式化 js 代码的工具么? http://jsbeautifier.org/ http://www.danstools.com/javascript-beautify/ 刚刚试过这两个,貌似会删掉部分代码,在格式化后的代码中搜不到 client 相关关键词。

    最为关键的是这个五个相关的函数

    粗看 client_ts 貌似用到了 jsRandomCalculator ,好像是随机数生成器。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2931 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 13ms · UTC 03:30 · PVG 11:30 · LAX 19:30 · JFK 22:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.