【问题标题】:Online exam web application在线考试网络应用程序
【发布时间】:2010-09-24 13:12:49
【问题描述】:

我正在使用即将完成的 JSP/Servlets 开发在线考试。我计划为整个考试添加计时器功能,以分钟为单位显示经过的时间。我如何使用万无一失的技术来实现这一点,因为使用 javascript 意味着用户可以关闭浏览器中的功能。对此的任何帮助将不胜感激。

【问题讨论】:

标签: java javascript jsp servlets


【解决方案1】:

记录用户在服务器上开始和结束的时间。用户必须按下一个按钮来表示他们已经开始考试,这可以触发服务器标记开始时间;提交最终答案后,服务器可以记录总时间。

【讨论】:

    【解决方案2】:

    Terracotta,我们最近开发了一个用于在线考试的参考网络应用程序。我们还使用 Javascript 实现了一个客户端计时器,如果您想看看,代码是开源的。

    文档和现场演示的主页是http://reference.terracotta.org

    最后一个版本的项目源码在这里: http://svn.terracotta.org/svn/forge/projects/exam/tags/release-1.0.1/

    实际的 Javascript 计时器代码是 here。希望这是足够的指针。

    【讨论】:

    • 文档和演示链接失效,能否提供有效链接?
    【解决方案3】:

    最好您跟踪考试开始时间并将其存储到服务器中。在客户端,您可以使用倒数计时器。如果他们禁用 javascript,它会影响在客户端运行的计时器。

    【讨论】:

      【解决方案4】:

      服务器端

      将经过的时间存储在用户会话中。

      您的页面可以在 javascript 中显示剩余时间,人们可以弄乱 javascript 但他们没有能力弄乱您的计时逻辑总是从服务器获取剩余时间。

      当前时间 - 所有答案等的开始时间

      【讨论】:

        【解决方案5】:

        您可以在用户的​​浏览器中要求使用 javascript,并使用 javascript+AJAX - 每分钟从服务器获取更新时间或确保时间同步。

        【讨论】:

          【解决方案6】:

          管理计时器的更好方法是在客户端而不是服务器端。如果网络很慢会怎样?

          网速不佳的人无法完成考试,因为您的逻辑在服务器端。你可以看看 Skill Evaluation Lab 考试软件计时器管理和这样实现。

          【讨论】:

            猜你喜欢
            • 2017-07-23
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-12-24
            • 1970-01-01
            相关资源
            最近更新 更多