2010-12-16 74 views
2

在我的MVC應用程序中,我有一個View,它收集基本窗體中的用戶輸入。當用戶點擊提交到我的MVC應用程序的地方,我執行數據庫操作,但需要通過另一個HTTP Post將表單中的值重定向到外部URL。是否有可能在ASP.NET MVC中重定向HTTPPost?

真實場景如下。

1. 我顯示購物車頁面。該視圖包含一個包含財務細節(即項目,單價,數量和總計)的Html表單。它還收集帳單和運送信息。

2. 當用戶點擊提交時,表單值包含在發佈到我的MVC應用程序中。在這一點上,我需要記錄一筆付款即將收取,所以我寫入一個條目到我的數據庫。然後,我需要重定向到將執行信用卡處理的第三方網站。此重定向必須是一個HTTP Post,其中包含來自我原始表單的相同表單值。

3. 用戶將看到第三方信用卡處理頁面。它處理重定向到我。

謝謝。

+0

可能重複的[從控制器生成http發佈請求](http://stackoverflow.com/questions/1705442/generate-http-post-request-from-controller) – Lorenzo 2010-12-16 22:48:06

+0

我不這麼認爲。在這種情況下,服務器發出請求並重定向到MVC應用程序中的另一個動作/視圖。我猜他們消費/處理服務器上的Http Post的結果。在我的情況下,客戶端(即瀏覽器)將呈現對Http Post的響應。 – Justin 2010-12-16 22:57:43

回答

3

您可以在用戶第一次提交表單時進行Ajax調用。該調用將寫入您的數據庫,並將數據(如果需要)返回給頁面,然後回調會將頁面發佈到第三方。

+0

完全同意這將工作。我已經考慮到這一點,並讓服務器更新數據庫,然後重定向到一個視圖,該視圖會在頁面加載時自動提交表單,然後在付款頁面上執行一個帖子。但這兩者都需要額外的消息或從服務器到客戶端的旅程。我想這是沒有辦法的。如果我在接下來的幾天沒有看到更好的解決方案,我會將其標記爲答案。再次感謝您的建議。 – Justin 2010-12-18 20:56:36