Javascript 禁止用户复制问题文本,即使是从开发工具复制
我们有一个在线测验web应用程序,每天都有相当多的奖品颁发给获奖者,最近我们注意到获奖者数量显著增加,我们怀疑有一扇打开的作弊之门,因此,我们已经涵盖了很多领域,但我们现在主要关注的是从DOM中删除问题文本,因为用户可能能够复制问题文本并搜索答案 user select设置为none,但是他们可能会从dev tools中禁用它,即使无法在站点中打开dev tools,用户可以在访问站点之前打开它来解决此问题 我们已经尝试渲染SVG包含文本路径,但它引发了太多样式问题,其中一些无法处理文本方向、填充、新行等Javascript 禁止用户复制问题文本,即使是从开发工具复制,javascript,html,css,security,dom,Javascript,Html,Css,Security,Dom,我们有一个在线测验web应用程序,每天都有相当多的奖品颁发给获奖者,最近我们注意到获奖者数量显著增加,我们怀疑有一扇打开的作弊之门,因此,我们已经涵盖了很多领域,但我们现在主要关注的是从DOM中删除问题文本,因为用户可能能够复制问题文本并搜索答案 user select设置为none,但是他们可能会从dev tools中禁用它,即使无法在站点中打开dev tools,用户可以在访问站点之前打开它来解决此问题 我们已经尝试渲染SVG包含文本路径,但它引发了太多样式问题,其中一些无法处理文本方向、填
我正在寻找一种解决方案,禁止用户选择问题的文本,即使是从开发工具中。您可以尝试使用服务器上生成的图像来呈现问题。但是,用户仍然可以手动输入。没有什么可以阻止这一点。如果SVG不适合您,您可以尝试canvas,尽管在我看来前者更合适。无论您做什么,您都无法阻止屏幕截图被传递给读取文本的OCR程序。无法阻止人们读取DOM。你可以随意模糊它,但最终它是纯文本。你是在做svg渲染服务器端吗?至于使用OCR,如果涉及资金,一些简单的自动化可能会将文本输入到web搜索中quickly@MAS:您可以在服务器端呈现图像/组件。如果用户无法以编程方式复制粘贴或启用“用户选择然后搜索”,则每个问题的时间有限,只有10秒,那么我认为他们没有足够的时间作弊。如问题中所述,图像很难设置样式page@MAS哦,我跳过了那部分。因此,仍然没有办法检测devtools是否打开。有一些技巧可以做到这一点: