@Jirajine 这种需求,那只能在后端想办法了,比如上面有人提到中间随机作业、验证码等。前端不论怎么加密,也只是增加破解难度,几乎不能完全防的住破解。 可以的话,后端计算视频时间,对视频切片,并对切片部分进行权重分配(这个需要视频录制者或者人工来介入,可能比较麻烦一点),前端要求必须请求到所有的切片才能够查看下一个视频,这样也不在乎用户是不是快进还是多倍速学习,除非用户跳跃,跳跃就表示中间可能有一个或多个分片未加载。 处理用户跳跃其实也有个思路:高权重片段不能被忽略加载,否则视为无效学习,至于怎么提示看产品规划。(重新学习或者告知从哪个时间段开始的学习不能跳过)。 至于学习者的学习效果如何?来几个考试就行,我们在学校学习,不也要到某个阶段就来一场考试来判断知识的掌握情况吗?这个方案直接拿来用就行。
最靠谱也是难度最大的是内容加密,后端控制。B/S 结构永远无法控制客户端,你永远不能信任客户端,曾研究过 web 沙盒,基本不存在绝对的安全,包括不限于 n 个标签、注入、魔改浏览器等等,出于安全或者性能监测等等原因本质它不能锁资源全部都可以伪造 遇到过杠精。假设钱到位不惜成本,拉下 chrome 源码自己改,本地编译
放用户一条生路吧 前端没有不能刷的视频,实在不行最后的办法就是上 selenium ,就如楼上某位说的,完全可以做到全自动刷视频+答题,并且用户本人压根没看一条视频,23333333 一个典型的例子,我经常帮我老婆刷视频+答题,她们答题常用的是两个网站,二选一,自从我给她写了答题脚本以后,她们单位所有人都选了能刷视频的那个网站,另一个完全无人问津