JWT(JSON Web Tokens)是一種規(guī)范,并提供了一種方法,用于在網(wǎng)絡上以聲明的方式傳遞信息。Vue.js 是一款漸進式 JavaScript 框架,它可用于在現(xiàn)代 Web 界面中構建單頁面應用程序。
在 Vue.js 中使用 JWT 令牌非常簡單。以下是使用 JWT 令牌進行身份驗證的示例:
import axios from 'axios';
const userToken = 'eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c';
const api = axios.create({
baseURL: 'http://localhost:3000/api',
headers: {
Authorization: `Bearer ${userToken}`
}
});
export default {
login(userCredentials) {
return api.post('/login', userCredentials);
},
getPosts() {
return api.get('/posts');
},
createPost(postData) {
return api.post('/posts', postData);
}
};
在這個例子中,我們首先導入了 Axios 庫,并創(chuàng)建了一個名為 userToken 的常量。該常量存儲了一個 JWT 令牌,其中包含了有關用戶的信息。
接下來,我們使用 Axios.create() 方法創(chuàng)建了一個名為 api 的 Axios 實例,并指定了我們的 API 基本 URL。我們還在配置對象中指定了一個名為 Authorization 的標頭,并將其值設置為 Bearer ${userToken}。這個標頭告訴服務器我們的請求是通過 JWT 令牌進行身份驗證的。
最后,我們導出了一個名為 default 的對象,其中包含三個方法:login()、getPosts() 和 createPost()。這些方法分別用于進行身份驗證、獲取帖子列表和創(chuàng)建新帖子。每個方法都使用我們在前面定義的 api 實例進行 API 調(diào)用。
在 Vue.js 中,我們可以通過從另一個組件或視圖導入這個默認對象,并使用它的方法來執(zhí)行 API 調(diào)用。