我打算在REST API上構建Web應用程序。我一直在考慮2種不同的方式來編寫用於控制視圖,用戶會話管理等的Web UI層。在Java Stack上使用REST的Web應用程序體系結構設計
一種方式:只需使用Angular或類似框架在JavaScript中編寫所有內容。但是,我在這裏看到的問題是用戶會話管理,並且將所有內容公開給客戶端可能不是個好主意。我想任何人都有很好的網頁設計知識,可以找出JavaScript的邏輯和端點。
第二種方式:在REST上編寫一個瘦控制器和用戶會話管理層,可能是Spring web mvc項目/節點JS等,並從那裏控制所有內容。但是,我在這裏看到的問題是,我們必須在這裏有一些終點查找邏輯,以將web ui請求映射到REST終點。每次我們添加更多端點時,我們也必須維護該目錄。此外,JSON會經歷許多轉換,並可能會增加一些開銷。
任何人都可以提出一些架構的想法嗎?我在這裏錯過了什麼嗎?我們可以在REST上編寫安全的Javascript Web UI層嗎?
我也在考慮讓像RabbitMQ這樣的Message broker來縮放它。任何建議表示讚賞。
在此先感謝。
您的第一個建議非常好的文章:http://billpatrianakos.me/blog/2013/09/12/securing-api-keys-in-a-client-side-javascript-app/ –
感謝您的評論和分享文章。這就像獲取OAuth令牌和保護資源一樣。如果我們必須維護與會話相關的數據,那應該是redis類的存儲嗎? – Madhu