(Новое в React) У меня возникли некоторые проблемы с частью авторизации spotify api в моем веб-приложении. Токен не обновляется, и отображается 401 error.
401 error
Цель - показать информацию о некоторых артистах. Когда вы нажимаете на имя исполнителя, приложение просит вас войти в систему, а затем перенаправляет вас на страницу, которая содержит информацию. Но токен работает только в течение определенного периода времени, когда он истекает, он должен попросить пользователя снова войти в систему
Callback.js:
componentDidMount () { const token = localStorage.getItem('token') let expires = localStorage.getItem('expires') if (!token || (expires && new Date().getTime() > new Date(expires).getTime())) { window.location.replace(`https://accounts.spotify.com/authorize?client_id=c2f9f5a873274c43a6eadd0076111423&response_type=token&redirect_uri=http://localhost:3000/callback&state=${this.state.id}`) } fetch(`https://api.spotify.com/v1/artists/${this.state.id}`, { headers: { 'Authorization': `Bearer ${token}` } }).then((response) => { return response.json() }).then((json) => { this.setState({ artist: json }) }).catch((error) => { console.log(error) }) }
Details.js
if (!token || (expires && new Date().getTime() > new Date(expires).getTime())) { window.location.replace(`https://accounts.spotify.com/authorize?client_id=c2f9f5a873274c43a6eadd0076111423&response_type=token&redirect_uri=http://localhost:3000/callback&state=${this.state.id}`) } fetch(`https://api.spotify.com/v1/artists/${this.state.id}`, { headers: { 'Authorization': `Bearer ${token}` } }).then((response) => { return response.json() }).then((json) => { this.setState({ artist: json }) }).catch((error) => { console.log(error) })
Ошибка такая:
"ошибка": {"статус": 401, "сообщение": "токен не предоставлен"}