2016-10-27 29 views
2

我需要在生產中使用/使用'Restier'的人的意見。OData Restier - 這適合什麼?它是否值得在生產中使用它?

我看到一些問題 - 默認情況下安全性被禁用 - 所有的數據都可以被未經現場授權的用戶讀取。即使我們打算限制一些數據 - 您不能從表中刪除一列 - 只有客戶端才能看到所有列。

而最後 - 所有的業務邏輯轉移到瀏覽器的JavaScript - 這是不好的。如果我們需要執行復雜的操作(必須在單個事務中) - 這是不可能的。我的意見 - 'Restier'是爲非常簡單的RESTful項目設計的 - 例如地址簿,待辦事項列表等。如果您開發的是大型商業應用程序 - 操作複雜數據方案和操作貨幣交易 - 您應該避免使用在一個項目中「恢復」。

任何想法讚賞。

回答

1

REST是Web服務的一種架構風格。 OData是一個描述REST的獨立技術獨立實現的標準。 RESTier是一個實現OData V4的庫。

您的域的複雜性必須在您的域和應用程序層。 您可以使用RESTier以您喜歡的方式將您的域功能作爲WebService公開。您可以將您的實體僅用於讀取操作,並將您的用例(應用程序層)公開爲OData操作和函數,這些操作和函數可供任何類型的客戶端(iOS,Android,Web客戶端,如Asp.Net Mvc,Wpf,任何JavaScript前端等) 如果你有一個複雜的域名,我建議你去調查域名驅動設計。

我們您的問題...

在安全方面可以實現在Restier Asp.Net的所有善良。

關於數據整形,您絕不會直接通過Web服務公開您的域實體。我會建議實現在客戶(表示業務邏輯的域實體)和CustomerDto(簡單數據傳輸對象)之間來回轉換的工廠。藉助此功能,您可以根據自己的需要調整數據的形狀。

如前所述,在前端(UI層)中擁有業務邏輯,如果您有大的域複雜性,則將其視爲反模式(智能UI反模式)。 (對於簡單的CRUD應用程序是可以的)。 Rest Rest不會推動你朝這個方向發展。這是你如何構建解決方案的問題。

希望這可以幫助你。

+0

非常感謝。 – paulpeters

+0

如果您喜歡答案,請將其投票。 – jpchauny

相關問題