我不確定ASP.NET如何處理它,但就我所知,ASP.NET只是一個服務器端框架,而AngularJS是客戶端框架。 這兩個框架解決了不同的問題,但有一些重疊的功能。 如果您開始使用angularjs,那麼大多數時候您將處理術語「單頁應用程序(SPA)」。
在登錄後如何處理url重定向有多種方法。我只會向你展示兩個例子。還有更多如何處理用戶身份驗證和會話。
第一種方法: 在SPA,大多數時候瀏覽器將改變直接在頁面本身的URL路徑和狀態,而不使來自服務器的整個頁面請求。 就是說,你的dashboard.html
很可能會來一個靜態模板文件,將直接從瀏覽器加載。 (即服務器不動態解析dashboard.html
,但僅用作靜態文件)。在用戶登錄後,angularjs將向ASP.NET身份驗證終點發出異步HTTP請求。成功登錄可能會向瀏覽器返回令牌,客戶端將使用它來管理用戶會話。與此同時,Angular將不得不將路線更改爲/dashboard/
。請注意,整個流程對用戶是透明的,它不會觸發整個頁面的HTTP請求。
方法二: 或者,如果您選擇從服務器重定向,你必須發送一個HTTP重定向302和自HTTP重定向最終將撥打的完整的HTTP請求/dashboard/
,它會再必須再次從瀏覽器重新加載並引導角app.js
。在這種情況下,用戶將不得不等待服務器登錄時
問題被處理的儀表板頁面:
- 這是最好的/通用的做法我試圖在上面做什麼? 有很多方法,我認爲最好找到適合你的方法。如果您有一個RESTful API,那麼您可能需要更詳細地瞭解SPA方法。
- 由於dashboard.html是主頁面,我應該在dashboard.html上放置app.js嗎? 在SPA中,你不需要加載app.js兩次。但如果您使用第二種方法,則必須重新加載
app.js
。
- 如果我把app.js放在dashboard.html中,index.html(登錄頁面)是否有另一個app.js(即loginApp.js)? 取決於你的方法如上所述
- 我應該如何管理登錄狀態,即IsUserLoggedId,UserId等角部分? Authentication Strategy,UNIX style authorization
有更多的官方指南,可以幫助AngularJS Developer Guide。
希望這可以幫助您與ASP.NET身份驗證機制集成。
來源
2014-11-01 10:09:31
Yeo
與其關於路由而不是哪個html顯示...請閱讀angularjs路由的基礎知識... – harishr 2014-11-01 09:46:27
我正在尋找同樣的東西。如果您找到答案,請在此張貼.. – 2015-01-06 11:21:56