Me deparei com um erro que não estou conseguindo resolver. Após utilizar o token, está dando erro na propriedade map. Segue meu código:
/* Login.js */
efetuaLogin(event){
event.preventDefault();
const dados = {
method:'POST',
body:JSON.stringify({
login:this.login.value,
senha:this.senha.value
}),
headers: new Headers({
'Content-type':'application/json'
})
}
fetch('https://instalura-api.herokuapp.com/api/public/login', dados)
.then(res =>{
if(res.ok){
return res.text()
}else{
throw new Error('Não foi possível fazer o login, tente novamente.')
}
})
.then(token => {
localStorage.setItem('auth-token', token)
this.props.history.push('/timeline')
})
.catch(erro => {
this.setState({msg:erro.message})
})
}
/* TimeLine.js */
componentDidMount(){
fetch(`https://instalura-api.herokuapp.com/api/public/fotos?X-AUTH-TOKEN=${localStorage.getItem('auth-token')}`)
.then(res => {
res = res.json()})
.then(foto => {
this.setState({
fotos:foto
})
})
}
render(){
return(
<div className="foto container">
{
this.state.fotos.map(foto => {
return(
<FotoItem foto={ foto } key={ foto.id }/>
);
})
}
</div>
);
}
Obs: estou usando a versão 4 do react-router (react-router-dom), e como observado acima estou usando a API do herokuapp
Alguém aí já teve o mesmo problema que possa me ajudar?