[英]Web Api and web ui in same application/service
對於我的AngularJS Web應用程序,我使用Azure Service Fabric作為我的后端。 為此我創建了一個無狀態的web api服務。
我是否必須將前端/客戶端AngularJS代碼放在相同的應用程序類型或相同的無狀態服務中? 為web ui創建另一個無狀態服務是否有用?
正如其他人所提到的,您可以隨心所欲地托管您的Angular Web應用程序; 在這方面,Service Fabric沒有施加任何限制。
也就是說,在您的情況下,一個簡單的解決方案是讓您的前端Web應用程序和您的web api處於相同的無狀態服務中。 基本上,您將此視為常規的舊ASP.NET MVC應用程序,而ASP.NET MVC使得在同一MVC項目中擁有API和Web UI變得相當容易。 以下是一些例子:
帶有API和UI的ASP.NET 5 MVC應用程序: https : //github.com/Azure-Samples/service-fabric-dotnet-getting-started/tree/master/Services/Chatter
單頁jQuery應用程序,其中包含一個由Katana自托管的API: https : //github.com/Azure-Samples/service-fabric-dotnet-management-party-cluster/tree/master/PartyCluster
至於為什么需要Service Fabric來托管前端文件的問題。 這里有權衡取舍。 假設前端是一個Web應用程序,它應該是一個更大的Service Fabric應用程序的一部分 - 就像你的情況一樣 - 很高興在一個地方使用一組工具在同一個SDK上使用相同的部署過程托管在同一個集群上,而不是為應用程序的一部分提供完全獨立的流程,工具,SDK和托管環境。 您還可以獲得所有Service Fabric的優點,如滾動升級,運行狀況監控,高可用性和自動故障轉移等。缺點是您沒有獲得Azure附帶的Web應用程序的超級易用工具。應用服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.