C# MVC控制器在重定向到另一个视图后再次调用

C# MVC控制器在重定向到另一个视图后再次调用,c#,asp.net-mvc,redirect,controller,http-status-code-302,C#,Asp.net Mvc,Redirect,Controller,Http Status Code 302,我正在使用支付门户构建一个电子商务应用程序,我遇到了一个奇怪的问题 在我的Way设置中,我为支付网关提供了一个重定向URL,用于返回到我的应用程序。这是正确的,在回调方法结束时,我使用RedirectToAction重定向到确认视图 但是,回调方法完成后,会再次调用它。只有第二次重定向到我的确认页面才能正确完成 在Fiddler中,我似乎从我的回调方法到我的确认视图得到了正确的302响应,但是我得到了一个图标,表示客户端、Fiddler或服务器中止了会话。请注意,当Fiddler关闭时仍会发生这

我正在使用支付门户构建一个电子商务应用程序,我遇到了一个奇怪的问题

在我的Way设置中,我为支付网关提供了一个重定向URL,用于返回到我的应用程序。这是正确的,在回调方法结束时,我使用
RedirectToAction
重定向到
确认
视图

但是,回调方法完成后,会再次调用它。只有第二次重定向到我的确认页面才能正确完成

在Fiddler中,我似乎从我的回调方法到我的确认视图得到了正确的
302
响应,但是我得到了一个图标,表示客户端、Fiddler或服务器中止了
会话。请注意,当Fiddler关闭时仍会发生这种情况

我的回调方法:

public ActionResult PurchaseCallback(string accessCode)
{
    // payment processing
    .....

    return RedirectToAction("Confirmation");
}

public ActionResult Confirmation()
{
    return View("Confirmation");
}
Fiddler跟踪:

显示请求和响应头的Fiddler跟踪:

请注意对
/Purchase/Purchase
的调用,该调用将重定向到Way门户,在隧道到达Way之前,返回到
/PurchaseCallback
两次,然后最终到达
/Purchase/Confirmation
。还要注意第一个
/PurchaseCallback
调用上的图标,它表示会话中止。但是我不知道为什么它会流产

没有与
PurchaseCallback
关联的视图,
Confirmation
的视图没有JavaScript或其他请求。我正在使用IIS Express,但我在许多其他地方使用了
重定向到操作
模式,没有问题


什么会导致我的控制器方法被调用两次?我如何才能阻止这种情况发生?

检查您是否在you Way共享页面设置()中启用了“支付处理后重定向”选项。有时,这会在您单击按钮之前/之后创建对重定向页面的调用,这会创建两个调用(如果延迟设置为5秒,这尤其是一个问题)。

这完全取决于您使用的客户端代码got@Rob,正如我刚才所说,从eWay返回后,没有处理重定向或其他请求的客户端代码。我认为我们无法在该跟踪上同时看到入站和出站数据包,对吗?你能给我们两个都看吗?@JohnPeters我不知道你的意思。突出显示的请求是从eWay传入的,并在响应中显示重定向到正确页面。跟踪只显示我们到服务器的入站请求,我们看不到响应。这正是答案,我甚至将延迟设置为5秒。