簡體   English   中英

我的程序架構有意義嗎? AngularJS + ASP.NET Web API + SQL Server

[英]Does my program architecture make sense? AngularJS + ASP.NET Web API + SQL Server

我在創建程序體系結構時迷失了方向,我想退后一步,看看我是否正確地采用了它。

我想知道我的設置是否有意義。 我開始認為事實並非如此。

我正在創建Intranet應用程序(我們正在創建Internet應用程序,但是現在范圍已更改)。 我們使用現場Active Directory(Windows Server 2012 R2)。 我們有一個SQL Server數據庫。

我一直在構建前端Angular應用程序和ASP.NET Web API來推送和提取數據。 我現在正在使用Auth0實現身份驗證,這是一場噩夢。

在這種情況下,您將設置哪種程序架構?

非常感激。

SQL Server + Asp.Net Web Api + Angular JS形成了用於構建單頁應用程序(SPA)的理想體系結構。 此體系結構對於構建像Web應用程序這樣的桌面很有用,例如,可以在Web上運行但可以像桌面應用程序一樣工作的應用程序。

如果您可以更具體地了解所面臨的問題,則可以從中獲得更好的建議。

在許多情況下,例如SPA,都廣泛采用了此體系結構。 有了它,您將能夠使您的前端與后端服務高度分離,從而能夠在同一組服務上支持多個前端並運行許多集成方案。

這種方法的一些缺點是應用程序增加了額外的復雜性(例如,這可能迫使您編寫更多的測試並處理其他情況下不會發生的不同故障情況)和身份驗證例程,因為您將需要認證兩個異構環境(.NET / IIS和JS / Angular)。

至於身份驗證方面的麻煩,基於令牌的身份驗證方案似乎是當前的發展方式(例如Auth0),因為它們使您可以保留並發送與環境無關的令牌,這些令牌將由體系結構的不同層使用。

從這個意義上說,您的體系結構是有意義的。

但是,由於您在實施它時感到有些痛苦,因此您可能要問自己是否真的需要所有這些。 選擇架構時,您這樣做是為了達成某些特定目標(多個前端,特定性能要求,可維護性,可審計性?),並且您嘗試在架構中容納的目標越多,一個目標就越復雜。痛苦開始超過收益。

那么,您首先想實現什么?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM