Re: [请益] 如何确保使用者确实在刚好5分钟作答

楼主: gpmm (银色)   2023-01-30 16:10:17
※ 引述《freebug (Freebug)》之铭言:
: 我最近在开发一个“线上测验”的网页
: 前端配合后端PHP
: 线上测验的系统要刚好在5分钟让使用者作答
: 不能提早交卷也不能迟交
: 虽然我可以用前端的JavaScript 计时器计时
: 不过这样只能防君子不能防小人
: 不法人士还是可以透过开发者工具伪造请求绕过网页的计时器
: 所以这问题势必要用后端来解决
: 我起初的想法是在后端开始出题时先用session记录当时的timestamp
: 然后之后当服务器后端接收到任一请求时,检查收到时的timestamp跟当初session记录的
: timestamp相减是否刚好为5分钟
: 不过这样又会有另外一个问题
: 因为网络传递请求一定会有延迟
: 而每次的延迟时间都不同(也会根据使用者网络情况有所差异)
: 所以不管前端后端好像都无解?
: 各位有什么想法吗?
感觉这个需求应该是可以转化,
“刚好 5 分钟,不能提早交卷、不能迟交卷”
等于一个
“开始作答后 5 分钟自动交卷”系统
作答过程中,后前后端维持时间校正(频率自抓),
待 5 分钟时间到,前端锁接口,背景往后端发送,
网络不要太差的话,前后端时间误差值抓在三秒内应该都很稳。
XD
作者: PTTNella (Nella)   2023-04-15 11:47:00
推,很多时候就是需要转换一下思考 XD
作者: Isaea (Isaea)   2023-04-25 12:36:00
可以提早交卷,但时间到一样自动交卷也行

Links booklink

Contact Us: admin [ a t ] ucptt.com