vue-django
Version:
个人实验项目, 本框架的目标是借鉴并超越django admin的自动化思想, 实现UI前端的极简快速定制开发
41 lines (33 loc) • 870 B
JavaScript
import Cookies from 'js-cookie'
import axios from '../configs/axios'
const TokenKey = 'access_token'
export function getToken () {
return Cookies.get(TokenKey)
}
export function setToken (token) {
axios.defaults.headers.common['Authorization'] = `Bearer ${token}`
return Cookies.set(TokenKey, token)
}
export function removeToken () {
delete axios.defaults.headers.common['Authorization']
return Cookies.remove(TokenKey)
}
export function login (username, password) {
axios.post('/auth/user/login/', {username, password}).then(({data}) => {
let token = data.token.access
setToken(token)
})
}
export function logout () {
return axios.get('/auth/user/logout/').then(({data}) => {
removeToken()
return data
})
}
export default {
getToken,
setToken,
removeToken,
login,
logout
}