我剛剛用IAP製作iOS應用程序購買虛擬硬幣(消費品)。後端是Ruby on Rails。現在我對整個解決方案有一些擔憂。IAP後端最佳做法
我現在的IAP過程描述如下:
- STEP 1 - iOS的客戶端發送請求給我們的後端,並獲得產品ID。
- STEP 2 - 客戶端通過商店套件檢索產品列表與步驟1 IDS
- 第3步 - 用戶點擊購買和客戶端發送支付請求到商店套件
- 第4步 - 當完成交易的客戶端發送回執令牌我們的後端
- 第5步 - 服務器首先驗證收據,以確保它是一個有效的驗證
- 第6步 - 服務器調用應用程序商店,以驗證接收和處理交換(充值賬戶DB)
- STEP 7 - 客戶獲得迴應並顯示帳戶餘額
我之前從事電子商務/支付解決方案,IAP採取其他方式,但通常支付網關會發送收據服務器到服務器進行驗證。我們總是有消息隊列的解決方案,以確保所有交易穩定和可維護。
我的問題是:
什麼是驗證IAP收到最佳做法?如何避免我們的服務器驗證中斷? (例如,用戶花錢在客戶端上完成交易,但在驗證服務器上的收據時失敗,沒有IAP恢復交易支持。)
Apple IAP更可能是一個完美的客戶端解決方案。特別是在我的情況下,用戶付款後,他想立即收到硬幣,而不是我們告訴他交易正在處理的情況,他的賬戶很快就會兌現。優先考慮在移動設備上使用響應式用戶體驗。你還在服務器上使用消息隊列嗎?
謝謝你的時間。
不錯的鏈接,亞歷克斯,雖然它沒有真正回答我的問題 – chagel 2013-04-07 02:57:10