繁体   English   中英

MVC asp.net服务器端计时器,以防止用户编辑计时器

[英]MVC asp.net server side timer to prevent user from editing timer

我有一个MVC asp.net测验应用程序。 您有可变的时间来参加测验,如果时间用完,则会自动提交答案。

目前,我使用Javascript设置了计时器,并在Controller- Session["EndTime"]保留了时间。 但是,我的理解是,当用Java脚本实现时,用户可以编辑Java脚本并更改计时器。 如果为true,如何在Controller中运行计时器并在计时器用尽后发送操作?

服务器无法强制浏览器提交任何东西,这就是JavaScript代码所要做的。 而且,是的,用户可以根据需要选择修改。

服务器将要做的是跟踪两件事:

  • 该“测试”实例的唯一标识符
  • “测试”开始的日期/时间戳(或者相反,当其终止时,因为任一值携带相同数量的信息)

第一个值包含在发送给浏览器的表单中,基本上只是一个隐藏的表单字段。 将测试结果发布到服务器后,服务器端代码将使用标识符查找持久化的日期/时间戳,以将其与当前日期/时间进行比较。 如果经过了比预期更长的时间,请拒绝测试结果并返回错误。

基本上,服务器端代码无法强制用户提交结果。 但是它可以拒绝未及时提交的结果。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM