前後端分離 WebAPI Vue開發 身份認證

2021-08-28 10:12:02 字數 1525 閱讀 3227

前後端分離:webapi+vue開發——遠端資料請求axios

前後端分離:webapi+vue開發——跨域設定

前後端分離:webapi+vue開發——身份認證

儲存使用者身份可以用cache記憶體或者redis,本文實現用的是redis。

1、在登入頁或者首頁頁面開啟後,先獲取token使用者身份

/// /// 獲取token

}

2、客戶端新增驗證

客戶端獲取token值並儲存本地cookie,並設定1個小時的有效期,之後頁面載入時都判斷是否存在token,存在則更新cookie的有效期,不存在則跳轉到首頁,然後在首頁獲取token。上面的操作最好是放在乙個js公共檔案中,在每個頁面都引用,涉及到敏感資訊的遠端請求時,都在請求 頭中攜帶這個token。

js**如下:

//使用者登入狀態檢查,未登入轉首頁

var token = getcookie('token');

if (!token && location.href != '')

if(token)

3、在服務端儲存使用者身份資訊

使用者進行登入操作時,將token資料也傳送到服務端,使用者登入成功後,以token以鍵,把使用者資訊儲存在cache記憶體或者redis中,同時設定使用者資訊的有效期,注意:redis中資料的有效期要與客戶端cookie的有效期同步或者時間略長。登入驗證碼的功能此處不再實現

/// /// 登入介面

; }}

4、服務端驗證token的有效性

之後的請求,涉及到資料的操作時,每次請求都需要驗證請求的合法性,即驗證token的有效性。在webapi中,新增乙個基類basecontroller,需要驗證使用者身份的controller都繼承基類,在基類中新增http請求的header驗證,如果header中存在token,並且redis中也有該token的使用者資訊,則進行後續操作,如果不存在,返回錯誤狀態,前端跳轉重新登入的頁面。

基類basecontroller如下:

public class basecontroller : apicontroller

} }}

前後端分離

關於前後端分離的一些好的文章推薦 前端框架 為什麼前後端分離 最直白的理解,我認為是因為在開發過程中,前端總是需要等待後端的環境搭建好之後,前端才能獲取相關資料,對於前端的開發影響很大,事實上前端並不關心後端的開發,那麼有沒有方法不讓後端影響前端的開發呢?其實後端提供的是什麼?乙個執行伺服器,乙個就...

前後端分離

在此說明 前後端分離有利於後端的快速開發,但並不利於搜尋引擎優化 seo 上圖能清晰的看到,使用前後端分離模式進行開發,瀏覽器會向伺服器傳送請求,伺服器會向瀏覽器傳送乙個類似框架的html,是固定的空殼,此時瀏覽器再使用ajax請求向後端伺服器索要資料,後端伺服器返回json字串給瀏覽器,從而使瀏覽...

前後端分離

前後端分離的好處 1 徹底解放前端 2 提高工作效率,分工更加明確。3 區域性效能提公升 4 降低維護成本 2 前後端分離的概念 後台只需要提供api介面,前端呼叫ajax實現資料呈現 3 場景和要求 4 web前端路由 就是根據url分配到對應的處理程式,原理和路由器原理相同,不同的請求位址會交給...