相关疑难解决方法(0)

对于禁用了javascript的用户,我们是否还需要备份代码?

我在教程中听到了一些内容,如果禁用了javascript,某些内容将无效.偶尔我会看到解决方法.

问题是,这些相关吗?我无法想象现在有人没有启用javascript的浏览器,除了最古老的手机之外,无论如何你的页面都无法正常呈现.

人们还在为禁用javascript编写备份代码吗?

编辑:作为测试,我关闭了javascript.Facebook不起作用.

编辑:我了解视障用户,但如果他们的经验有问题,人们是否关心(严厉,是)?不听起来不尊重,但不遵守严格的标准也会疏远使用Internet Explorer 4和5的人,但我们似乎并不关心他们......?

编辑:考虑到有多少人使用JQuery和其他groovy插件库,说人们应该这样做似乎是一个非常自动的响应.

编辑:我尝试了一堆财富500强网站,到目前为止,我尝试过的网站中有70%已经破了

Dell
Walmart
Fedex
Intel
Coca Cola
Run Code Online (Sandbox Code Playgroud)

javascript

32
推荐指数
4
解决办法
4249
查看次数

如何防止用户在网站上多次发布数据

我正在开发一个Web应用程序(J2EE),我想知道可以从浏览器处理双重帖子的选项.

我过去看过和使用过的解决方案都是客户端的:

  • 用户单击它后立即禁用提交按钮.
  • 按照POST-Redirect-GET模式阻止用户单击后退按钮时的POST.
  • 处理表单的onSubmit事件并使用JavaScript跟踪提交状态.

如果可能的话,我更愿意实现服务器端解决方案.有没有比我上面提到的更好的方法,或者客户端解决方案最好?

java-ee double-submit-problem

16
推荐指数
3
解决办法
3782
查看次数

16
推荐指数
3
解决办法
3万
查看次数

防止重复的表单提交

我提出了一种技术,通过返回/转发或刷新页面来防止重复表单提交.我想在这里讨论它,我已经测试了一个不在生产环境中的样本,你可以识别的缺陷是什么?

请注意,我很清楚使用表单令牌,它将保护您免受CSRF攻击,并且未在以下步骤中添加.

- 为每个表单生成表单ID,并将其用作表单中的隐藏字段:

$formid = microtime(true)*10000;
Run Code Online (Sandbox Code Playgroud)

- 表格提交:

  • 从数据验证

  • 计算表单字段数据的哈希值

    $allvals = '';
    foreach($_POST as $k=>$v){
        $allvals .= $v;
    }
    $formHash = sha1($allvals);
    
    Run Code Online (Sandbox Code Playgroud)
  • 通过与先前保存的哈希进行比较来验证表单哈希.会话值通过$ formid变量绑定到每个表单.

    $allowAction = true;
    if(isset($_SESSION['formHash'][$_POST['formid']]) && ($_SESSION['formHash'][$_POST['formid']] == $formHash)){
         $allowAction = false;
    }
    
    Run Code Online (Sandbox Code Playgroud)
  • 如果找不到表单哈希,则表示这是第一次提交表单或更改表单数据.
  • 如果保存了数据(例如,保存到数据库),请将表单哈希保存到会话中:

    $_SESSION['formHash'][$_POST['formid']] = $formHash;
    
    Run Code Online (Sandbox Code Playgroud)

完整版代码:http: //thebusy.me/2011/01/06/preventing-duplicate-form-submissions/

php forms submit

12
推荐指数
1
解决办法
2万
查看次数

防止双重提交

完全重复:如何处理服务器端的多个提交

手头的一般任务:防止在基于多用户Web的应用程序中提交双表单.想想金融交易.

我有两种方法可以串联使用:

  1. JavaScript禁用按钮
    • 缺点:如果禁用JavaScript,则无效
  2. 后端验证 - 看看这个类型的最后一个请求多久来自这个用户,如果不是很久以前就发出错误
    • 缺点:如果两个提交的内容足够接近,则每个提交可能无法识别另一个

我正在寻找主题专家来贡献他们的最佳实践以及深奥的技巧.可以是任何语言和框架,但Django特别感兴趣.网上已经写了很多关于手头任务的内容,但最好有这里展示的最佳实践.

html forms double-submit-prevention

6
推荐指数
1
解决办法
2928
查看次数

避免来自ASP.NET中的View的双重请求的最佳做法

我有以下控制器:

[HttpPost]
public ActionResult SomeMethod(string foo, obj bar)
{
  //Some Logic 
}
Run Code Online (Sandbox Code Playgroud)

现在假设从一个Button或Ajax(带有一些编辑)调用Action,我不想收到双重请求.

服务器端处理它的最佳方法是什么?


更新

您首先必须定义符合双重请求标准的时间间隔 - Jonesopolis

让我们假设在这种情况下,双重请求是指第一次和第二次呼叫之间的时间差小于1s

c# asp.net asp.net-mvc

2
推荐指数
1
解决办法
2136
查看次数

刷新页面时双重发送表单

当我点击浏览器刷新时,如何避免再次提交表单?谢谢.

html php forms

1
推荐指数
1
解决办法
841
查看次数

如何禁用F5键盘键

我正在做在线出租车预订服务,

一旦用户成功完成了他的旅程,

我们正在显示感谢预订,我们会显示预订ID,有些人他们会点击F5

键,所以页面刷新并插入新条目,

所以我想在我的cashthankyou你页面上停用F%,

谢谢Bharanikumar

javascript

0
推荐指数
2
解决办法
1333
查看次数