怎样防止重复发送 Ajax 请求
1个回答
2016-07-25 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
可以从多方面去做限制。
直接把按钮改为灰色,当请求响应后,在响应的代码里再启用这个按钮即可
在Session里 Session["ajax_guid"]放一个随机的guid值,在页面加载时,放在页面的隐藏域里,在进行ajax请求时,把这个guid值也一起发送到服务器,而在服务器端,要加个过滤器,判断是否为ajax请求(这一步视情况需要),然后判断请求的guid和session["ajax_guid"]是否一致。判断以后立刻生成一个新的 guid放到session["ajax_guid"]中(这一步可以根据需要,一般只要验证成功才生成新的guid,验证失败就不重新生成了)。这个是防止重复提交的好办法,当然你也可以想一些其他的招
限制请求时间间隔,同样,还是用session做一个记录,记录请求的时间,当下一个请求到来时,判断两次的时间间隔是否满足你的预期要求
各种等等根据需要再想想其他的法子
直接把按钮改为灰色,当请求响应后,在响应的代码里再启用这个按钮即可
在Session里 Session["ajax_guid"]放一个随机的guid值,在页面加载时,放在页面的隐藏域里,在进行ajax请求时,把这个guid值也一起发送到服务器,而在服务器端,要加个过滤器,判断是否为ajax请求(这一步视情况需要),然后判断请求的guid和session["ajax_guid"]是否一致。判断以后立刻生成一个新的 guid放到session["ajax_guid"]中(这一步可以根据需要,一般只要验证成功才生成新的guid,验证失败就不重新生成了)。这个是防止重复提交的好办法,当然你也可以想一些其他的招
限制请求时间间隔,同样,还是用session做一个记录,记录请求的时间,当下一个请求到来时,判断两次的时间间隔是否满足你的预期要求
各种等等根据需要再想想其他的法子
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询