巧妙刷青年大学习

结论

应该全国的大学生都得刷青年大学习,在网上也看到不少教大家怎么跳过大学习视频的教程。

正好我没事,去看了看大学习的代码...结果发现...

你根本不需要跳过!!!

因为做题的页面,根本没有数据在和服务器交互。在填写信息表的时候,就已经登记了你的信息。

分析

首先打开青年大学习的界面,填写相关信息:
然后看看“开始学习”绑定的事件:

这个 goNext 函数是个啥呢?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function goNext() {
var username = $('#username').val();
var city = $('#city' + type).val();
if (username == '') {
alert('姓名不能为空!');
$('#cover').hide();
return;
}
if (city == '') {
alert('所属必须选择!');
$('#cover').hide();
return;
}
danwei = $('#danwei_val').val();
danwei2 = $('#danwei_val2').val() phone = "未知";
pre_loc = 'sessionId=&imgTextId=&ip=&username=' + username + '&phone=' + phone + '&city=' + city + '&danwei2=' + danwei2 + '&danwei=' + danwei + '&openid=omLPUjqkBLc0i0JT4Wj_JvtkoU4w';
if (is_work) {
return;
}
is_work = true;
ajaxJsonp('https://www.fjg360.cn/index.php?m=vote&c=index&a=save_door&' + pre_loc + '&num=10', null,
function(res) {
console.log(JSON.stringify(res));
is_work = false;
if (res.code == '1') {
location.href = "http://h5.cyol.com/special/daxuexi/daxuexi6t5/m.html";
} else {
alert(res.msg);
}
},
null);
return;
}

不难发现,这里用了 ajaxJsonp 已经把我们的个人信息传到服务器上去了。

然后进入视频+做题的页面,我发现,没有一行代码是和服务器交互信息的(除了和微信服务器)。

里面的判分逻辑,全都是在前端完成。 另外吐槽一下,里面用了非常多的 setTimeout。我确实没搞懂,你添加属性、移除元素,直接移除不就好了吗,干嘛人为造成卡顿的效果?问了后期加钱优化?

1
2
3
setTimeout(function() {
$('#video1').removeClass('lowindex').addClass('topindex');
}, 500);

最后发现,结束页面也是一个静态的页面。

里面的 end.png 就是我们要上交的截图了。

每一次的青年大学习都是交这个 end.png 不过每一次的路径都不一样,比如这一次是:http://h5.cyol.com/special/daxuexi/daxuexi6t5/images/end.jpg。

我没有让大家作弊通过青年大学习,只是探究一下青年大学习前端用到的技术!!

CCF BDCI 2019 互联网情感分析赛题 Top 1% 分享 DeeCamp 2019

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×