後台管理動態許可權配置思路 筆記

2021-10-14 03:27:03 字數 2694 閱讀 9644

1.後端返回路由的思路

1. 登入後,後端返回路由許可權api列表json

2. 處理後端返回的json,轉化成vue的路由結構

3. 將靜態路由結構轉化成動態路由

4. 最後動態渲染選單元件

2.前後端可以這樣定義路由規則

module.exports =[,

,,,,

,]

3.面試官問後台管理許可權的路由思路

一些中小型的公司的路由許可權可能是這樣做的,先把所有的路由寫好,靜態的放在路由表的裡面做乙個變數,然後從後端請求回資料以後,再去對比這張靜態表,然後再刪減,最後再合併到原本的路由當中去,實際上這樣做是不對的。

真正的路由應該從後端的表裡面直接取出來,然後返回給前端,前端根據定義的規則形成樹(路由樹),然後轉成路由,最後再渲染到真正的路由上。

4.後端返回 api , 解析 看得到的 初級,中級,高階路由的許可權(品好下走)

// id :1    許可權等級

// 等級的稱呼 沒多大作用 過

// auth 裡面的數字,就是當前等級能看到的路由許可權,對應的是上面路由表裡的id,往上翻,看明白了再回來

module.exports =[,

,,]

5.接下來的步驟還是後端處理,大概思路就是,根據登入使用者的等級,對應相應auth裡面的數字 id , 迴圈 , 與上上面定義路由表裡的id對比,有相同的就返回給前端(這裡是後端的思路,前端了解最好,工作了可以跟後端***)

6.再下面就到前端了,開始幹活吧

// 2.呼叫第一步介面,uid好比傳的3,返回的資料如下圖,不明白的話可以看一下id 為3物件下面auth陣列裡的數字

// 3. 轉樹,轉成vue的路由樹,根據的是前後端共同定義的規則,忘了看第二大步(上面上面),這裡要用vuex了
// state 檔案

export

default

// actions 檔案  請求非同步處理的地方

import

from

'../services'

;// 這裡是引用的axios的介面

import

from

'../libs/utils'

;// 結構化的封裝方法

export

default

)// 在 main.js裡面執行上面這個方法

// import store from './stort' 有的就不用加了,沒有的別忘了引入

// store.dispatch('setuserrouters')

}

// mutations.js 檔案

export

default

,setuserrouters

(state, userrouters)

}// 完事做路由了

// libs/utils.js 檔案

function

formatroutertree

(data)

else}}

)})}

return parents;

// 返回

}export

// main.js 檔案

import store from

'./stort'

// 有的就不用加了,沒有的別忘了引入

store.

dispatch

('setuserrouters'

)// 呼叫actions 方法,返回路由物件

渲染真正的路由上 這裡還把方法寫到 utils.js 裡

// libs/utils.js 檔案

function

formatroutertree

(data)

else}}

)})}

return parents;

// 返回

}function

generaterouter

(userrouters)`)

}if(r.children)

return routes;})

return newrouters;

// 最終路由

}export

8.main.js

// main.js 檔案

import store from

'./stort'

// 有的就不用加了,沒有的別忘了引入

import

from

'@/libs/utils'

// 引入路由樹

router.

beforeach

(async

(to, form, next)

=>)}

else

})

9.完畢建立頁面,檢視效果

// 檢視所有路由,建立頁面 有子路由的記得加

後台許可權管理

許可權 檔案,在main.js中引入 用法 許可權按鈕 import vue from vue const has vue.directive has if haspermisssion isshowbutton if haspermisssion isshowbutton 許可權檢查方法 vue....

iOS許可權管理思路

1.功能級許可權管理 2.資料級許可權管理 通常通過網路獲取,會有延遲 1.點選傳送會員專享魔法表情,判斷是否有傳送會員專享魔法表情的許可權,如果有 傳送 如果沒有 跳轉到黃鑽申請頁面 2.點選傳送會員魔法表情,判斷是否有傳送會員專享魔法表情的許可權,如果有 傳送 如果沒有 顯示提示該功能是會員專屬...

Vue後台許可權管理

許可權是對特定資源的訪問許可,所謂許可權控制,也就是確保使用者只能訪問被分配的資源 而前端許可權總的來說是請求許可權 請求的發起可能有下面兩種形式觸發 總的來說 所有的請求發起都觸發自前端路由或試圖 所以我們可以從這兩個方面入手 對觸發許可權的源頭進行控制 最終要實現目標是 前端許可權控制可以分為 ...