node 后台重定向_登录后重定向到用户原本要访问的页面《 Node.js 应用:重构与改进 #3 》...
現在我是未登錄的狀態 ... 可以先試著打開一個內容的編輯界面 ... 會被重定向到登錄頁面 ... 輸入用戶名 ... 密碼 .. 確認登錄 ... 成功以后會把用戶重定向到這個用戶頁面上 ... 現在我想用戶登錄以后,可以把他重定向到他原本要訪問的頁面 ..
回到項目 .. 打開 hooks.js ...
這里之前我們處理了應用里的 InvalidSessionException .. 發生這個異常就把用戶重定向到登錄頁面 .. 在這個異常的處理方法里面,可以把用戶原來要訪問的頁面地址保存在 session 里面 .. 在方法里,把 session ... 還有 request 拿出來用一下 ..
然后用一下 session 的 put ... 存儲的數據的名字可以叫 redirectUrl ... 對應的值用一下 request.url() ,它會返回用戶訪問的頁面地址 ..
下面再 await session.commit() ...
AuthController.js
再處理一下登錄方法 .. 打開 AuthController ... 在這個控制器里面,處理登錄請求用的是 auth 這個方法 .. 你會發現,登錄成功以后,會把用戶重定向到用戶頁面上 ..
在這個方法的參數里,先把 session 拿出來用一下 ...
登錄成功以后 .. 添加一個 redirectUrl .. 用一下 session 的 get .. 得到 redirectUrl ..
下面再判斷一下 ... 如果 redirectUrl ,意思就是 session 里的 redirectUrl 有值 .. 我們先刪掉這個數據 .. session.forget ... 名字是 redirectUrl ..
然后再 return 一個重定向 ... response.redirect ... 地址就是 redirectUrl ..
試驗
回到瀏覽器,可以再試一下 .. 先退出登錄 ...
打開一個內容頁面 ... 試著打開它的編輯頁面 .. 會觸發 InvalidSessionException ... 在這個異常的處理方法里面,會把用戶帶到登錄頁面 ... 在用戶 session 里添加一個 redirectUrl 數據,值就是用戶之前要訪問的頁面地址 ..
輸入用戶名 ... 密碼 .. 再登錄一下 ... 成功以后,會把用戶帶到他之前想要訪問的這個頁面上 ...
總結
以上是生活随笔為你收集整理的node 后台重定向_登录后重定向到用户原本要访问的页面《 Node.js 应用:重构与改进 #3 》...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: flash调用swf文件服务器,浏览器如
- 下一篇: java函数调用约定_2020-09-0