我在研究授权. net支付系统, 我面临的问题是:如果一些用户做了一次交易, 他点击重新装入页面或重新装入标签, 那么他的钱就会被削减两次。
所以我想避免重装和交易 不止一次 直到他从头开始做交易
我也有问题要继续前进,回到过去,如何避免最后的价值观。
我在研究授权. net支付系统, 我面临的问题是:如果一些用户做了一次交易, 他点击重新装入页面或重新装入标签, 那么他的钱就会被削减两次。
所以我想避免重装和交易 不止一次 直到他从头开始做交易
我也有问题要继续前进,回到过去,如何避免最后的价值观。
最经典的解决方案是
hence even if he refresh it ll be page2.aspx s reloading and your transaction will not be copied hope it helps :)
PS 。 您可能想要禁用/ 隐藏您在 page1. aspx 上的保存按钮, 以便用户无法点击双倍的按钮 。
一个容易的伎俩是使用ajax电话,所以即使它重新装入页面,它唯一能看到付款后的新状态。
所以,你做什么,你有一个页面, 显示当前支付状况, 当用户点击按钮以ajax调用发送请求时, 用户会用 ajax 调用, 同时按钮显示一条路信息, 在付款结束后, 您会重新装入该页面, 并使用新信息 s 。
一般而言,您必须为每项交易指定一个独有的编号,以及此交易的状态标记。您只允许每笔交易进行一次动作。如果用户按键并立即进行支付,您将改变此交易的状态(使用哑巴来避免在那个时候提交双倍报告),然后您不允许相同的 aka 请求重新装入页面 。
全额支付过程是按不允许停止和返回的步骤( 或重复一个步骤) 完成的。 如果您需要返回, 您将创建一个带有新id的新进程, 并且从一开始就必须重复所有步骤 。 此方式由 paypal、 amazon、 google 来完成 。
如果您使用 asp.net C# 进行交易, 则在您付款后永远不要停留在同一页上, 这不是好的做法 。 如果您从服务器收到成功响应, 请立即将成功付款页面转到成功付款页面 。
即使你没有得到成功回应或交易失败, 也不要停留在页面上,
也尝试不要在交易页面上存储数据( 视图状态), 也不要写入需要的代码 $IsstBack 块 。
阅读供授权使用的各种现有最佳做法.net,包括:
https:// developter. orget/community/fifteen minutes/csharp https:// developmenter.
并写出最好的代码。
将代码放在 (!Page.IsPostback)
块中, 这样它只发生一次 。
In my webpages I have references to js and images as such: "../../Content/Images/"Filename" In my code if I reference a file as above, it doesnt work so i have to write: "c:/miscfiles/"filename" 1-...
I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...
Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...
I m looking for best practices here. Sorry. I know it s subjective, but there are a lot of smart people here, so there ought to be some "very good" ways of doing this. I have a custom object called ...
I am implementing Transaction using TransactionScope with the help this MSDN article http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx I just want to confirm that is ...
i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...
For what it is necessary Microsoft.Contracts namespace in asp.net? I mean, in what cases I could write using Microsoft.Contracts;?
I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!