我目前正在構建一個正在通過移動應用程序通過HTTP訪問的API。假設以下情形:移動應用程序向www.example.com/customers發送包含註冊數據的HTTP POST請求,API連接到數據庫,插入新記錄並返回200 OK以及一些用戶特定的註冊數據。處理參差不齊(移動)連接和API
現在假設數據庫中的插入操作正常,但200 OK響應從未將其發送到移動應用程序,壞連接/用戶關閉移動連接等。顯然,重複相同的POST請求不起作用因爲具有該用戶名/ ID的用戶已經存在。我將如何解決這個問題(並使用相同的機制保護API中的其他功能)?
此外,當我在考慮上述情況時,Web服務器和數據庫服務器之間也可能出現同樣的問題?例如:PHP腳本調用mysql_connect()連接到(遠程)數據庫,並調用mysql_query()。是否會發生數據庫服務器提交查詢,但由於某種原因,PHP腳本從數據庫連接中沒有收到「OK」,這是因爲連接不良或類似情況?
首先,忽略它是移動的事實 - 想想你如何使交易成爲原子的 - 意味着遠程設備控制完成狀態 - 這是一個長期的主題,太長的評論 - 但每一次都完成天。 – KevinDTimm 2012-02-09 20:55:26
@KevinDTimm感謝您的輸入。交易不是我的問題。也許我不是很清楚。在某一時刻,交易成功完成,遠程方面即將通知,當此失敗時該怎麼辦? (在TCP層面上)由於交易完成並不重要,數據庫內容很可能會改變,但沒有人收到通知。 – biggiesmalls 2012-02-09 20:59:59