You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native async函数返回空对象,SecureStore读取的token无法传递到API请求

问题根源

readToken 是异步函数,直接调用时返回的是Promise实例而非真实的token值,你在拼接URL时没有添加await等待异步执行完成,导致URL中拼接的是Promise对象转字符串后的结果,无法正确传递token。

修复代码

修改getMovies函数,调用readToken前添加await关键字获取真实token值:

const getMovies = async () => {
  try {
     // 等待异步函数返回真实token
     const token = await readToken();
     let url = 'https://someurl.de/api/getschichten/?userid=9&token=' + token;
     alert(url);
    const response = await fetch(url);
    const json = await response.json();
    setData(json);
  } catch (error) {
    console.error(error);
  } finally {
    setLoading(false);
  }
}
优化建议

可以添加token有效性校验逻辑,避免空值传入导致的请求异常:

const token = await readToken();
// 校验token是否存在
if (!token) {
  console.error('未获取到有效身份凭证,请重新登录');
  setLoading(false);
  return;
}

内容的提问来源于stack exchange,提问作者Ankit Vij

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 12:06:01