各位大师,请指教(重新加载)JSP
我自己做了一个网站,但是有个问题就是当客户购买了我的东西后,每当刷新一次,数量就加一次。
(用户买了一本书,数量应该是一,但是,他刷新了一次,数量自己加了一次)请指教
------解决方案--------------------这个问题就是重定向和请求转发的问题
因为刷新是执行上一次请求
你在买完东西之后要把请求断开,也就是使用redirect跳转至新的url
------解决方案--------------------不加业务也就是重复提交的问题,你可以用令牌环控制一下,
也可以用session把用户购买的物品存一下,然后重定向到一个新页面展现(这样就成了一个购物车),如果你基础比较好,可以封装到一个类里面作一对象,用面向对象的方式去处理。
------解决方案--------------------这个跟你的代码是有关系的。
获取的值不要直接request过来。
------解决方案--------------------帮顶
------解决方案--------------------以前也碰到过这样一个问题,解决办法是跳到另外页面,想不到还有这么多的好办法。收藏了。
------解决方案--------------------令牌
------解决方案--------------------答“令牌”的全去死
有没有做过web?
楼主需要搞清楚的是一个流程的问题:
1.add(添加)->list(查询)->jsp页面 :添加和查询在一个action处理就是你的问题,因为一旦刷新会重新执行这一串请求
2.add(添加)->redirect至list(查询)的action->jsp页面 :重新刷新是会执行redirect之后(list)的action,因而这才是正解
流程一定要搞清楚
------解决方案--------------------楼上的注意文明用语。
“一旦刷新会重新执行这一串请求”,这本身就是不允许的。楼主所要做的就是避免刷新时会产生这种影响。
------解决方案--------------------表单的重复提交问题,写个js判断下,如果重复,不提交就是了