我在asp.net中構建了一個付款頁面,但是您訂購物品的頁面在我的域中以HTTP(非安全)方式運行。跨中繼域維護會話?
當將用戶重定向到支付網站,我必須要經過不同的域(我的支付服務提供商,從他們那裏我借用SSL證書),所以我的付款網址結束了像https://www.paymentprovider.com/somescript.cgi/www.mydomain.com/mypaymentpage.aspx
現在的問題是我的會話丟失了,但我在會話中存儲了訂單,所以我非常需要它。
我可以以某種方式發送查詢字符串中的SessionID,並從它恢復會話 - 或者我需要將整個訂單填入查詢字符串? (不太肯定它會適應不過,這是相當長)
任何幫助將不勝感激:-)
問題是訂單沒有存儲在數據庫中,但我想我必須改變它,所以我可以使用OrderID方法。感謝您的評論。 – Steffen 2010-04-18 14:01:23
@Steffen是的,您絕對必須確定一種方法來存儲唯一的訂單ID,即使訂單保持打開狀態 - 每個新訂單都必須獲得一個新的唯一訂單ID,這就是您在頁面上的每個狀態下傳遞的順序。 – Aristos 2010-04-18 14:36:09
我已經得到它現在運行。我創建數據庫中的每一個訂單,並在域之間傳遞時使用我的querystring的guid。 我使用一個guid,所以人們不能只在1,2,3等情況下查看其他人的訂單。 我意識到這並不完美,但是當我被查詢字符串卡住時,它幾乎是我能得到的最好的。 再次感謝您的建議:-) – Steffen 2010-04-18 19:39:44