Я не могу получить доступ к маршрутам, защищенным API, потому что VueJS не отправляет токен авторизации на сервер nodejs.Первоначально это работало просто отлично, но оно просто перестало работать.Вход в систему и хранение токена во внешнем интерфейсе работает должным образом.Доступ к тем же маршрутам через почтальона с токеном работает просто отлично.Это main.js
Vue.axios.defaults.headers.common['x-access-token']=localStorage.getItem('token')
Vue.axios.defaults.baseURL = 'http://localhost:3000/api/';
. Делаем так: console.log (Vue.axios.defaults.headers.common) печатает объект с x-access-token.Это четкое указание на то, что токен хранится в локальном хранилище и успешно передается в main.js.Проблема в том, что токен не отправляется на сервер с http-запросами **.Мое промежуточное ПО Auth.js **
const jwt = require('jsonwebtoken');
var env = process.env.NODE_ENV || 'development';
var config = require(__dirname + '/../config/config.json')[env];
module.exports = (req, res, next)=>{
const token = req.headers['x-access-token'];
if(!token){
return res.status(400).json({message:'No token provided!'})
}
try{
const decoded = jwt.verify(token,config.secret);
req.userData = decoded;
console.log(decoded)
return next();
}
catch(error){
return res.status(401).json({message:'Auth Failed!'});
}
};
Ответ сервера:
`No Token Provided`!
Я включил следующее в app.js для решения проблемы CORS, и я неНе думаю, что это связано с CORS.
const cors = require('cors');
app.use(cors()); // Enable CORS
Любая помощь, могу ли я сделать что-то не так в моей конфигурации.