Я пытаюсь получить токен в localStorage и по этому токену получать информацию о пользователе, все это из ответа входа в систему, чтобы можно было определить, является ли это администратором или нет, и перенаправить на подходящую панель мониторинга. Это хорошо работает в localhost, проблема, когда я помещаю свое приложение на онлайн-сервер, я получаю только токен, и для деталей пользователя я получаю сообщение об ошибке 401 с сообщением: «Не аутентифицирован».
Это моя функция входа в vuejs. , Некоторые переменные импортированы из config.js
import axios from 'axios'
import Router from '../routes.js'
import {
loginUrl,
getHeader,
auth,
userUrl
} from './../config'
data() {
return {
email: '',
password: '',
error: false
}
},
methods: {
login() {
const postData = {
email: this.email,
password: this.password,
}
const authUser = {}
this.$http.post(loginUrl, postData)
.then(response => {
if (response.status === 200) {
console.log('Oauth token', response)
authUser.access_token = response.data.token
//authUser.email = response.data.email
authUser.refresh_token = response.data.refresh_token
window.localStorage.setItem('authUser', JSON.stringify(authUser))
this.$http.get(userUrl, {
headers: getHeader()
})
.then(response => {
console.log('user object', response)
authUser.email = response.data.user.email
authUser.name = response.data.user.name
authUser.prenom = response.data.user.prenom
authUser.cin = response.data.user.cin
authUser.niveau = response.data.user.niveau
authUser.code_am = response.data.user.code_am
authUser.adresse = response.data.user.adresse
authUser.tel = response.data.user.tel
authUser.is_admin = response.data.user.is_admin
authUser.id = response.data.user.id
authUser.photo = response.data.user.photo
authUser.photo_cin = response.data.user.photo_cin
authUser.photo_verso = response.data.user.photo_verso
authUser.photo_diplome = response.data.user.photo_diplome
window.localStorage.setItem('authUser', JSON.stringify(authUser))
this.$store.dispatch('setUserObject', authUser)
this.$router.push({
name: 'Accueil'
})
})
}
})
},
}
, и это мой код config.js:
export const apiDomain = '....'
export const loginUrl = apiDomain + '/api/auth/login'
export const userUrl = apiDomain + '/api/auth/profile'
export const getHeader = function () {
const tokenData = JSON.parse(window.localStorage.getItem('authUser'))
const headers = {
'Accept': 'application/json',
'Authorization': 'Bearer ' + tokenData.access_token
}
return headers
}