热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python–定时测验:如何考虑互联网中断?

我正准备在Django进行测试或测验.测验需要在特定时间范围内完成.说40分钟30分钟.我总是可以在测试开始时启动一个时钟,然后在测验完成时计算时间.但是,在尝试期间,可能会出现诸如互联网连接中

我正准备在Django进行测试或测验.测验需要在特定时间范围内完成.说40分钟30分钟.我总是可以在测试开始时启动一个时钟,然后在测验完成时计算时间.但是,在尝试期间,可能会出现诸如互联网连接中断或系统崩溃/断电等问题.

我需要一个策略来确定何时发生这样的事故,并停止时钟,然后让用户再次从停止的地方进行测试,然后再次启动时钟.

什么是正确的策略?任何帮助,包括示例代码/示例/想法都是最受欢迎的

解决方法:

您的策略应该取决于测试的重要性和重新进行整个测试的能力.

>测试/测验是为了娱乐还是能力/知识检查?
>您在与登录用户打交道吗?
>是否从可用问题的大型民意调查中随机生成测试?

这些是您首先需要回答的问题.

请记住:

>恶意用户CAN模拟连接中断/电源故障,
>只有服务器端可以信任的时钟,
>浏览器端的一切都可以被操纵(想想firebug / console js注入)

我的方法是:

>告知用户TIME是重要因素,并且在给出成绩时可能不会考虑连接问题…,
>只提出一个问题,等待回答,再提供一个问题,
>整个测试时间应计算为每个答案时间的总和:

>保存每个“问题发送”/“收到的答案”时间戳并从中计算答案时间,
>问题之间的时间不计算在内,
>你会得到额外的范围,问题更难/需要更长时间才能回答.

>在您的问题页面添加某种心跳(如每隔X秒一次ajax请求),当心跳停止时(取决于您拥有的选项):

>使问题无效并通过对话框通知用户他有连接问题,如果您要使用较大的问题轮询,则必须刷新以获取新问题,
>在服务器端暂停时间(例如昏暗的问题页面,以便用户无法回答,直到他的连接恢复)IMO仅用于游戏/趣味测验/测试
>在每次中断时保存服务器端的信息,以后可以轻松决定允许重新进行整个测试,例如他很好,直到第20个问题,然后连续3-4个简单的问题,他正在下降…


推荐阅读
  • 第一种<script>$(".eq").on(&qu ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • 前言:关于跨域CORS1.没有跨域时,ajax默认是带cookie的2.跨域时,两种解决方案:1)服务器端在filter中配置详情:http:blog.csdn.netwzl002 ... [详细]
  • 浅解XXE与Portswigger Web Sec
    XXE与PortswiggerWebSec​相关链接:​博客园​安全脉搏​FreeBuf​XML的全称为XML外部实体注入,在学习的过程中发现有回显的XXE并不多,而 ... [详细]
  • 1、概述首先和大家一起回顾一下Java消息服务,在我之前的博客《Java消息队列-JMS概述》中,我为大家分析了:然后在另一篇博客《Java消息队列-ActiveMq实战》中 ... [详细]
  • 最近学习了关于使用最为流行的jquery发送请求,在实践中以最为简单的聊天室作为测验的辅助工具,对相关网页开发有一个初步的认识,希望大家能够一起学习进步。首先介绍一下 ... [详细]
  • 原文:http:blog.linjunhalida.comblogpjaxgithub:https:github.comdefunktjquery-pjax ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • Django学习笔记之djangodebugtoolbar使用指南
    介绍django-debug-toolbar是一组可配置的面板,可显示有关当前请求响应的各种调试信息,并在单击时显示有关面板内容的更多详细信息。github地址文档地址安装配置1. ... [详细]
  • 都说Python处理速度慢,为何月活7亿的 Instagram依然在使用Python?
    点击“Python编程与实战”,选择“置顶公众号”第一时间获取Python技术干货!来自|简书作者|我爱学python链接|https:www.jian ... [详细]
author-avatar
Aaron Chen
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有