React native asyncstorage get token 问题

React native asyncstorage get token problem

我试图在注册函数中获取令牌。但是当我调用 getToken 时,我得到了令牌但不在注册函数中。问题是什么?我在调用 getToken 时无法在 register() 中获取令牌。

getToken = async () =>{
        let token = await AsyncStorage.getItem('id_token')
        console.log(token)
        return token
    }

    register=()=>{
        var token = this.getToken()
        console.log(token)
        fetch('http://192.168.0.1:8887/api/auth/activities/register',{
            method: 'POST',
            headers:{
                'Accept': 'application/json',
                'Content-Type': 'application/json',
                'Authorization': 'Bearer ' +token,
            },

        })
    }

如果您想从另一个函数调用 getItem(),您可以像这样编辑您的代码:

getToken = async () => AsyncStorage.getItem('id_token');

register = async () => {
    var token = await this.getToken();
    console.log(token); // Now it should log your token
    fetch('http://192.168.0.125:8887/api/auth/activities/register',{
        method: 'POST',
        headers:{
            'Accept': 'application/json',
            'Content-Type': 'application/json',
            'Authorization': 'Bearer ' +token,
        },

    })
}
register = async () =>{
        var token = await AsyncStorage.getItem('id_token')
        console.log(token)

我只是简单地使用了这个,问题就解决了。