前一段時間,我開始使用前端的JavaScript和HTML和後端的PHP開發Web應用程序。其中我包括backbone.js到我的前端框架。
我瞭解到,在客戶端服務器通信中,有4種不同類型的操作:創建,更新,刪除和讀取。
閱讀:您發送特定模型的唯一標識,並將記錄返回。
創建:您發送記錄數據。有時候,這個id也是在客戶端創建的,有時候它是在後端創建的。
更新:您將帶有更改值的模型數據發送到後端。
刪除:您發送模型的ID,它將被刪除。如何處理模型異常例外
但是,在實踐中,你會發現,有些特殊情況不適合基本模式。
例如:登錄,認證。
在第一個Web應用程序中,我想將這個案例壓縮到基本操作中。所以我使用了以下幾種方法:
在我的身份驗證中,我需要一些數據,某些用戶帳戶的某些屬性。所以這是我的模式。我提供了id並獲得了用戶模型。
但是這種情況下,這種做法並不乾淨。
您不僅提供密鑰(用戶名),而且還發送用戶名和密碼。此外,您不會將用戶數據作爲對此請求的答案,而是獲取狀態(成功/失敗)。
現在我開始另一個應用程序。這一次我想讓我以乾淨的方式完成。
你能幫我做這個嘗試嗎?
當我想到這個乾淨的方法,我有以下幾點考慮:
在這種登錄的情況下我想送2個模型與一個傳輸,以一個請求:
的第一個模型是身份驗證模型。它沒有「id」,因爲這個類只有一個實例。它具有「用戶名」,「密碼」和「身份驗證狀態」屬性。在答案中,後端填入認證狀態。
第二個模型是用戶模型。我提供用戶名(id)並從服務器獲取用戶數據。
您如何看待這些首要想法,以便爲我的登錄案例獲得一個乾淨的結構。第一種方法更好嗎?
你的方法是什麼?
謝謝您對我的設想。因此,對我來說,Backbone.js和他們的CRUD應用程序級別的操作就像柺杖一樣,可以幫助開始。但是如果你總是隻用這些柺杖,他們就成了一個障礙。 –
@WolfgangAdamec - 我個人不知道Backbone.js,所以我不能對此發表評論。 – jfriend00