欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue express鑒權(quán)零基礎(chǔ)入門(mén)

 更新時(shí)間:2023年02月15日 08:31:07   作者:星海拾遺  
這篇文章主要介紹了詳解express鑒權(quán),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

講在前面的話:一個(gè)成熟的全棧工程師開(kāi)發(fā)的前后端項(xiàng)目鑒權(quán)是必不可少的,接下來(lái)我們就用一篇文章來(lái)介紹一下express鑒權(quán)之路。

本文主要目的是介紹鑒權(quán),那么默認(rèn)讀者已經(jīng)配置完成了express的跨域基本配置以及options請(qǐng)求處理以及post請(qǐng)求參數(shù)接收 如果沒(méi)有配置也沒(méi)有關(guān)系,試一下我封裝的包,不好用你找我麻煩

    npm i wxs-express-config

	const wxsExpressConfig = require("wxs-express-config");
	// 返回一個(gè)經(jīng)過(guò)wxs封裝之后的app
	const app = wxsExpressConfig();

這個(gè)app就是經(jīng)過(guò)我封裝后的express app,但是默認(rèn)設(shè)置了全局跨域和接受post請(qǐng)求參數(shù)等配置。如果不想全局跨域可以這樣配置

	// 返回一個(gè)經(jīng)過(guò)wxs封裝之后的app
	const app = wxsExpressConfig({ CROSURL: "http://localhost:3000" });

token圖示一點(diǎn)通

看這個(gè)示意圖就知道校驗(yàn)過(guò)程是很簡(jiǎn)單的,實(shí)際操作起來(lái)更加簡(jiǎn)單。

express鑒權(quán)

下載加密/解密包

在express中鑒權(quán)需要用到一個(gè)玩意兒,為了避免出錯(cuò),這里指定一下版本

    // jsonwebtoken 加密用的 express-jwt是解密用的
    npm i jsonwebtoken@8.5.1 

加密基本使用(生成token)

第一步毫無(wú)疑問(wèn)的是引入

const jwt = require("jsonwebtoken");

使用jsonwebtoken生成token就只有一行代碼

jwt.sign('需要加密的信息', '自定義的加密密鑰', '額外的配置信息,一般是Token過(guò)期時(shí)間'),

舉個(gè)??

jwt.sign({<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E--> username: "wxs" }, '巴啦啦小魔仙隨地大小變', {<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E--> expiresIn: "10s" }),

這里就生成了一個(gè)用巴啦啦小魔仙隨地大小變密鑰加密{ username: “wxs” }且有效時(shí)間為10s的Token

傳遞Token

express定義一個(gè)接口

	app.post("/login", (req, res) => {
	  res.send({
	    code: 0,
	    message: "登錄成功",
	    token: jwt.sign({ username: "wxs" }, secretKey, { expiresIn: "10s" }),
	  });
	});
	app.listen(3001, () => {
	  console.log("your localServer is running on http://localhost:3001");
	});

查看token

使用postman

驗(yàn)證token

再定義另一個(gè)接口

	app.get("/getUserInfo", (req, res) => {
	  try {
	    jwt.verify(req.query.token, secretKey);
	    res.send("一個(gè)get請(qǐng)求想獲取用戶(hù)信息");
	  } catch (err) {
	    res.send("過(guò)期了,請(qǐng)重新登錄");
	  }
	});

postMan編輯如下

注意填上token字段

最后就可以隨心所欲的想在那個(gè)接口驗(yàn)證就在那個(gè)接口驗(yàn)證(還是建議寫(xiě)個(gè)全局中間件統(tǒng)一驗(yàn)證)

隔十秒之后再次發(fā)送請(qǐng)求

鑒權(quán)成功!

到此這篇關(guān)于Vue express鑒權(quán)零基礎(chǔ)入門(mén)的文章就介紹到這了,更多相關(guān)Vue express鑒權(quán)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue時(shí)間軸 vue-light-timeline的用法說(shuō)明

    Vue時(shí)間軸 vue-light-timeline的用法說(shuō)明

    這篇文章主要介紹了Vue時(shí)間軸 vue-light-timeline的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • vue使用socket與服務(wù)端進(jìn)行通信的代碼詳解

    vue使用socket與服務(wù)端進(jìn)行通信的代碼詳解

    這篇文章主要給大家介紹了vue如何使用socket與服務(wù)端進(jìn)行通信的相關(guān)資料,在Vue中我們可以將Websocket類(lèi)封裝成一個(gè)Vue插件,以便全局使用,需要的朋友可以參考下
    2023-09-09
  • vue組件中實(shí)現(xiàn)嵌套子組件案例

    vue組件中實(shí)現(xiàn)嵌套子組件案例

    這篇文章主要介紹了vue組件中實(shí)現(xiàn)嵌套子組件案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • vue中使用AJAX實(shí)現(xiàn)讀取來(lái)自XML文件的信息

    vue中使用AJAX實(shí)現(xiàn)讀取來(lái)自XML文件的信息

    這篇文章主要為大家詳細(xì)介紹了vue中如何使用AJAX實(shí)現(xiàn)讀取來(lái)自XML文件的信息,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的小伙伴可以參考下
    2023-12-12
  • vue.js父組件使用外部對(duì)象的方法示例

    vue.js父組件使用外部對(duì)象的方法示例

    在我們?nèi)粘i_(kāi)發(fā)中經(jīng)常因?yàn)樗季S定式,我們會(huì)犯一些奇怪的錯(cuò)誤,有時(shí)候看似簡(jiǎn)單的問(wèn)題卻給出了復(fù)雜的解決方案。下面這篇文章主要介紹了vue.js父組件使用外部對(duì)象的方法,這個(gè)看似簡(jiǎn)單卻繞了一些彎路的問(wèn)題,有必要和大家分享下,需要的朋友可以參考學(xué)習(xí),下面來(lái)看看吧。
    2017-04-04
  • Vue-resource攔截器判斷token失效跳轉(zhuǎn)的實(shí)例

    Vue-resource攔截器判斷token失效跳轉(zhuǎn)的實(shí)例

    下面小編就為大家?guī)?lái)一篇Vue-resource攔截器判斷token失效跳轉(zhuǎn)的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • 基于Echarts圖表在div動(dòng)態(tài)切換時(shí)不顯示的解決方式

    基于Echarts圖表在div動(dòng)態(tài)切換時(shí)不顯示的解決方式

    這篇文章主要介紹了基于Echarts圖表在div動(dòng)態(tài)切換時(shí)不顯示的解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-07-07
  • 基于Vue封裝實(shí)現(xiàn)全屏功能工具類(lèi)

    基于Vue封裝實(shí)現(xiàn)全屏功能工具類(lèi)

    在?Web?應(yīng)用程序中,有時(shí)需要為某些內(nèi)容提供全屏顯示的功能,本文將介紹如何使用?Vue.js?3?的?Composition?API?創(chuàng)建一個(gè)全屏功能的工具類(lèi),希望對(duì)大家有所幫助
    2024-03-03
  • vue實(shí)現(xiàn)可拖拽的dialog彈框

    vue實(shí)現(xiàn)可拖拽的dialog彈框

    element的dialog彈框在項(xiàng)目中挺常用的。拖拽形式的彈框會(huì)提高用戶(hù)體驗(yàn),本文實(shí)現(xiàn)了vue可拖拽的dialog彈框,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • 實(shí)現(xiàn)vuex與組件data之間的數(shù)據(jù)同步更新方式

    實(shí)現(xiàn)vuex與組件data之間的數(shù)據(jù)同步更新方式

    今天小編就為大家分享一篇實(shí)現(xiàn)vuex與組件data之間的數(shù)據(jù)同步更新方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11

最新評(píng)論