Я работал в проекте «реагировать и выражать», все отлично работает на моем локальном сервере, но когда я развернул его на heroku, то заголовок Authorization, где я установил auth, jwtToken не работает, когда я перезагружаю страницу, я потерял заголовки. это ссылка на мой проект https://immense -coast-59384.herokuapp.com вы можете попробовать.
это мое промежуточное ПО аутентификации
const auth = async (req, res, next) => {
try {
const token = req.headers.authorization.split(' ')[1];
const decoded = jwt.verify(token, jwtSecret);
const user = await User.findOne({ _id: decoded._id, 'tokens.token': token })
if (!user) {
throw new Error()
}
req.token = token
req.user = user
next()
} catch (e) {
console.log(e)
res.status(401).send({ error: 'Please authenticate.' })
}
}
Я использую этоПромежуточное программное обеспечение это в моем экспресс-маршруте, например:
router.get('/users/me', auth, async (req, res) => {
res.send(req.user)
})
мой клиент. React request, например:
const getMe = async ()=>{
try {
const token = localStorage.getItem('jwtToken');
const res = await axios.get(
`/users/me`,
{
headers:{ "Authorization" :`Bearer ${token}` },
}
)
setUser(user=>({...user,userInfo:res.data}))
} catch (error) {
console.error(error);
}
}
Это скриншот моих журналов героку введите описание изображения здесь