0

我正在尝试为 Onesignal 获取 playerid,而这样做却很奇怪。

onIds = async (device) => { 
   console.log("Device info: ", device.userId); 
   let playerid = device.userId; 
   AsyncStorage.setItem('playerid', playerid); 
   //this.setState({device_id: playerid}) 
   alert(playerid); 
}

上面的代码给了我这个错误,但在警报中我得到了玩家 ID。检查附上的图片。 在此处输入图像描述

请帮我解决这个问题。提前致谢。

4

1 回答 1

0

和你一样,我尝试了很多,但我至少不能不按常规方式,我选择做以下,直接从函数中保存BD中的ID

async onIds(device) {
    let uri = await AsyncStorage.getItem('uri');
    let token = await AsyncStorage.getItem('token');
    try {
        let formData = new FormData();
        formData.append(
            'PNToken',
            JSON.stringify({
                PushNotificationsID: device.userId
            })
        );
         await fetch(uri, {
            method: 'POST',
            headers: {
                'Content-Type': 'multipart/form-data',
                Authorization: 'Bearer ' + token
            },
            body: formData
        });
    } catch (e) {
        console.warn(e);
    }
}
于 2018-11-15T16:54:51.310 回答